我在JSP中遇到错误,我无法弄清楚导致它的原因。我已经包含了所有相应的库,并且我确保遵循大写/小写的bean约定。这是JSP中的相关代码:
<c:forEach items="${relevantData}" var="entry">
<p>${entry.price}</p>
</c:forEach>
relevantData
是List<MyData>
。出于这个问题的目的,足以说MyData
是一个包含Double
命名价格的类(遵循bean约定的Getter和Setter)。当我尝试加载此页面时,我在服务器日志(Tomcat 7.0.22)中收到以下错误:
javax.el.PropertyNotFoundException:
Property 'price' not readable on type java.lang.Double
为什么我会收到此错误,如何解决?
答案 0 :(得分:22)
问题实际上是由MyData
类的可见性引起的。我在Netbeans中自动生成了MyData
类,但我没有注意到类名前面没有关键字public
。这意味着当它到达JSP时,它无法读取MyData
中的属性。
我将类型更改为public
,问题解决了。