【发布时间】:2016-01-25 12:08:29
【问题描述】:
在jsp中显示一个Java bean的boolean属性时遇到了一个奇怪的问题。似乎名为 isEmpty() 的 getter 会在 EL 解析器上导致 ParseException。
出于演示目的,我创建了一个显示问题的类。
public class Bookcase {
public boolean isWithoutContent() {
return true;
}
public boolean isEmpty() {
return true;
}
}
调用jsp中的属性:
${bookcase.withoutContent}
${bookcase.empty}
第一个显示true,而第二个抛出错误:
org.apache.el.parser.ParseException: Encountered " "empty" "empty ""
at line 1, column 23.
Was expecting:
<IDENTIFIER> ...
现在我知道有一个 EL empty 运算符,但很明显,点运算符表明我在 bookcase 对象上调用 isEmpty() 方法?显然不是,考虑到错误。
在实际的 bean 上,我不能/不想重命名 isEmpty() 方法,但是如何在 jsp 中显示此属性?
【问题讨论】: