当我遇到这个问题的时候,自己查了下百度,看到百度上五花八门的说法,真是醉了,以下是我的个人总结,有哪些不对,请大神指教。
问题代码:
<script type="text/javascript">
var voKeyWord = "${noticeVo.keyWord}";
var voTitle = "${noticeVo.title}";
var voDate = "${noticeVo.date}";
//var voRcdState = "${notice.rcdState}";
</script>
异常:
javax.el.PropertyNotFoundException: Property ‘rcdState’ not found on class ‘XX’
说法一
你的javabean里面xxx属性出问题,要不你就是没有xxx的get方法(set方法可以没有),要不就是你的get方法写法写错了,在页面用el表示时,应该将第一个字母改为小写。
但是我的javabean根本没有此属性,何来的大小写之分
说法二
缺少EL 的 jar包
但是我其他几个EL是可以用的
我的解决
把这行注释删掉//var voRcdState = “${notice.rcdState}”;
代码如下:
<script type="text/javascript">
var voKeyWord = "${noticeVo.keyWord}";
var voTitle = "${noticeVo.title}";
var voDate = "${noticeVo.date}";
</script>
原因:
明明注释掉了,却还是报错。后来才知道,JS里注释掉EL也会执行