【发布时间】:2015-10-01 10:52:06
【问题描述】:
在 WildFly9 中,我们使用 Spring Data,我们有一个 JSP,其工作代码如下(页面类型为 PageImpl):
${page.first}
${page.last}
${page.isLast()}
但是这条线不起作用:
${page.isFirst()}
我们得到 javax.el.MethodNotFoundException
这是一个错误还是我错过了 EL 文档中的某些内容?
我缩小了问题范围:我们尝试在此对象上调用“桥接方法”,而应用服务器无法看到桥接方法。我在这个来源中找到了这个:https://github.com/jboss/jboss-el-api_spec/blob/master/src/main/java/javax/el/Util.java
List<Wrapper> result = new ArrayList<>();
for (Method method : methods) {
if (method.getName().equals(name) && !method.isBridge()) {
result.add(new MethodWrapper(method));
}
}
但我还是不明白为什么我们不能达到这个简单的方法。
【问题讨论】:
-
变量名表明您正在尝试从集合中访问此方法,但我认为这只是一个坏名字?
-
是的。这与集合无关。
-
我认为它应该使用该语法,至少在较新的 JEE 版本中。也许更多的上下文会有所帮助?