问题说明:
今天碰到一问题,家里新增测试功能没有问题,而放到现场部署,页面抛这个错:java.lang.NoClassDefFoundError: javax/el/ExpressionFactory
后来对比才发现,现场使用的是Tomcat5.5的版本发布,而我使用的是6.0的版本,网上了解确实存在jstl支持的问题。
解决方案:
更新javax.el.jar等jstl相关包,部署到项目中。(资源可到我的上传中免费下载)
其实使用JSTL(JSP标准标签库)和环境很有关系tomcat6.0和tomcat5.5所需要的包是不同的。如果你和我一样使用的是tomcat5.5的话,我建议使用Tomcat5.5 + jstl1.1.2.jar + standard.jar + javax.el.jar。(注意区分下面的jstl1.2和jstl1.1.2,一个是1.2,一个是1.1版本)
我开始使用的是jstl1.2,很普通的el的使用都是能通过的,比如:<c:out value="Welcome!"/>,这是没有问题的,但是一旦使用了foreach一类的东西,就会出错。