码迷,mamicode.com
首页 > 编程语言 > 详细

Tomcat 7 javax.el.ELException

时间:2014-11-05 12:26:42      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:http   io   ar   使用   java   for   文件   on   问题   

今天部署SSH项目的时候发现一个非常奇怪的问题,项目在tomcat6.0上无任何问题,但把项目部署到服务器的tomcat7上的时候出现了javax.el.ELException 。
起初还以为是jar包没有配置正确、jstl与standard的版本问题或tomcat6.0 web.xml没有配置正确,可是各种解决方法尝试后依然不成功。后来发现错误只存在于嵌套的cforeach循环中。在搜索资料对比tomcat6.0与tomcat7.0的区别和查询一些文章之后,发现:
tomcat 7对EL表达式的语法要求比较严格,例如"${owner.new}"因包含关键字new就会导致解析出错。
而我正好在嵌套的foreach循环中使用了new关键字。。。。
怎么解决呢?有三种,如下:
第一种:严格遵守java规范,修改对象的属性名称,要求不包含java关键字;
第二种:修改EL表达式,例如"${owner.new}"可以修改为"${owner[‘new‘]}";
第三种:修改tomcat属性,忽略对EL表达式的关键字检查。修改$CATALINA_BASE/conf/catalina.properties文件,添加org.apache.el.parser.SKIP_IDENTIFIER_CHECK=true选项。

原文出自:
http://www.myexception.cn/h/810255.html

参考文档:
http://tomcat.apache.org/tomcat-7.0-doc/config/systemprops.html#Expression_Language

Tomcat 7 javax.el.ELException

标签:http   io   ar   使用   java   for   文件   on   问题   

原文地址:http://www.cnblogs.com/shiyuemuyang/p/4075620.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!