最近在做一个项目时,遇到tomcat报错
“javax.el.PropertyNotFoundException:类型[java.lang.String]上找不到属性[XXX]
去百度了一下,总结出以下原因:
1 . 可能是你的javabean里面xxx属性出问题,检查以下你的get方法写法是否写错了
2. 在页面用el表示时,应该将第一个字母改为小写,原因如下:
首先我们需要了解的El表达式的运行机制:
el表达式在你获取对象时,自动把你的属性名转换成字符串,并把首字母大写,
进行拼接("get"+Xxx),
然后通过反射的方式获取到get方法,返回属性值。
实际上就是调用了一遍JavaBean里面的xxx属性的get函数。
3. 如果确定以上两点的没问题,那么就检查一下调用xxx的逻辑是否有问题。
4. 以上三点都没有问题的话,那么就检查以下自己的代码写的是否规范。
- 我就是第4点的错误,花了很久排查前三点结果都没有问题,后来在某篇博客上发现自己的问题了。把空格删掉,就可以成功执行了!!!
个人总结了一下,如有不对,还请指教!