终于有时间玩玩最新版本的Struts2.0.11了, 与上一个版本差别不大,但有一点是我最关心的:Struts2.0.11以后不再支持EL表达式了。详情请见:http://www.iteye.com/news/193
但是我在运行Struts2.0.11的时候,发现运行结果与容器有关。
比如说:Tomcat, Jboss(Jboss的内置Servlet容器就是Tomcat)运行程序的时候,就无法正常解析EL了。
但Weblogic10却能正常解析EL表达式。?
?
以下是本人测试的几个服务器,在Struts2.0.11环境下:
tomcat, jetty, jboss 都无法使用EL
?
weblogic10 与 glassfish2?可以正常使用EL
?
?
这真是挺郁闷的, 一直非常想不通Apache为什么会把Struts2搞的这么变态,EL表达式真的可以简化很多工作,比如: ${name} 感觉比 <s:property value="name" /> 要强很多倍, OGNL比JSTL强大很多,我承认,而且用了OGNL后,再也没用过JSTL了,但真有必要连EL也给干掉吗? 失望ing.............
1 楼
Caixiaopig
2008-01-07
这个变化如果对于已有的在struts2标签体中使用了JSTL的程序会造成影响。但是改变的话,还是能适应的,struts2的Cookbook上面有教大家怎样在jsp tag和struts2的tag之间传递数据,就是麻烦一点。但是总比因为jstl引起安全隐患来的好
2 楼
hantsy
2008-01-07
Caixiaopig 写道
这个变化如果对于已有的在struts2标签体中使用了JSTL的程序会造成影响。但是改变的话,还是能适应的,struts2的Cookbook上面有教大家怎样在jsp tag和struts2的tag之间传递数据,就是麻烦一点。但是总比因为jstl引起安全隐患来的好
jstl引起的安全隐患?太武断了吧,。。其实那是jstl 与ognl混用的结果。
jstl的EL应该吸收其它el的优点(如ognl,mvel等)。
ognl虽然功能比标准的el强大,但效能低下是事实。
Tapestry作者的blog中有这方面的性能测试比较,所以tapestry后续版本决定废掉ognl。
3 楼
Caixiaopig
2008-01-07
hantsy 写道
Caixiaopig 写道
这个变化如果对于已有的在struts2标签体中使用了JSTL的程序会造成影响。但是改变的话,还是能适应的,struts2的Cookbook上面有教大家怎样在jsp tag和struts2的tag之间传递数据,就是麻烦一点。但是总比因为jstl引起安全隐患来的好
jstl引起的安全隐患?太武断了吧,。。其实那是jstl 与ognl混用的结果。 jstl的EL应该吸收其它el的优点(如ognl,mvel等)。 ognl虽然功能比标准的el强大,但效能低下是事实。 Tapestry作者的blog中有这方面的性能测试比较,所以tapestry后续版本决定废掉ognl。
4 楼
cats_tiger
2008-01-07
原来是struts2的问题,可是为什么我在BEA WorkShop3.3(Eclips3.2)下开发就正常,用Eclipse3.3就出错呢?现在有些后悔用struts2了,比起JSF、SpringMVC,它并没有什么特别的优势。在架构选型的时候,最难以取舍的就是MVC框架了,各有各的优点和不足。
真不如自己做一个符合自己要求的。
真不如自己做一个符合自己要求的。
5 楼
yyjn12
2008-01-07
OGNL 这个东西,让人很讨厌