javax.el.PropertyNotFoundException: --未找到属性
问题
在开发中使用EL表达式获取属性值时报错
javax.el.PropertyNotFoundException: 在类型 [com.etime.util.PageUtil] 上未找到属性 [nextPage]
at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:256)
其他属性值都正常显示,就是这个 nextPage一直报错;回去检查PagUtil类中并没有发现问题,继续运行还是报错:
javax.el.PropertyNotFoundException: 在类型 [com.etime.util.PageUtil] 上未找到属性 [nextPage]
解决思路
EL的运行机制:
El表达式在获取到Attribute的键的值时,自动编译将你的属性转换为字符串,并把首字母大写,进行拼接 get+属性名,然后用反射的方式得到PageUtil中的 get+属性名的方法。
所以我回去找到PageUtil类中 找到get方法检查发现,get方法中的字母拼写错误,所以报错:
javax.el.PropertyNotFoundException: 在类型 [com.etime.util.PageUtil] 上未找到属性 [nextPage]
我将它改为正确的拼写 getNexPage—>getNextPage,然后执行
就运行成功了。
在开发中注意单词的拼写,回去改的话容易改正不全。