在新建web工程时,如果选的是javaEE5,使用Tomcat5.x,发现不能支持EL表达式。
解决办法:
一,在每个页面的头部加入:
<%@ page isELIgnored="false"%>
二,在web.xml里设置
<jsp-config> <jsp-property-group> <url-pattern>*.jsp</url-pattern> <el-ignored>false</el-ignored> <!-- <el-ignored>true</el-ignored> --> </jsp-property-group> </jsp-config>
三,更换Tomcat6.x
--------------------------------------------------------------------------------------------------------------------------------
分析原因:
后写了个jsp页面,加入 EL表达式:${1+2},正常输出应该是3,但是在tomcat5.x和tomcat6.x中输出有差别,配置环境:
J2EE1.4+tomcat5.x输出正常
J2EE5+tomcat5.x就输出${1+2}
J2EE5+tomcat6.x输出正常,这其中是何缘故?
Tomcat和J2EE版本不匹配,Tomcat 5.0.x 和 Tomcat 5.5.x 不支持 Java EE 5 的 Servlet 2.5、JSP 2.1 规范,他们仅能支持 J2EE 1.4 的 Servlet 2.4、JSP 2.0 规范,所以这种搭配是错误的!若需要使用J2EE 5,则建议使用tomcat6.x或以上版本Tomcat。