升级struts2.5版本时,工程的jdk版本需要1.7以上。
1、更换jar包
在struts2.5版本中xwork-core这个类库已经包含在struts2-core中,所以在此次升级中移除。
如果引用了其他struts2-x-plugin类库,也需要进行相应更新。
struts2.5版本开始使用log4j2日志系统,引入log4j-1.2-api-2.9.1可以避免log4j代码的修改,但需要在工程src目录下新增log4j2.xml配置文件,旧的log4j日志规则需要迁移到新的日志配置文件中,然后移除旧的日志配置文件。log4j2.xml的配置可以参考网上的教程。
2、配置文件修改
在2.5版本的struts2-core中没有了ng包,所以StrutsPrepareAndExecuteFilter类的路径需要修改。
所有struts配置文件的文件头部需要更新为2.5。
修改文件 struts-tags.tld。
如果需要使用通配符的方式配置action时,需要在action所在的package中设置strict-method-invocation属性为false或者在package包中添加<global-allowed-methods>regex:.*</global-allowed-methods>。
3、JSP修改
s标签库
<s:iterator>、<s:bean>等标签的id属性已过时,需要修改为var 属性。
<s:set>的name属性需要修改为var属性。
<s:property>标签的escape属性需要修改为escapeHtml属性。
JSP语法
使用<@page import="">导入包时,不要加分号结束。例如:
<@page import="java.lang.*">(正确写法)
<@page import="java.lang.*;">(错误写法)
4、Java文件修改
javabean的getter/setter方法需要注意按照规则书写。getter/setter为set/get 加上属性原名。
附:2.5所需jar包下载可以参考
https://download.csdn.net/download/xiaolegeaizy/11199892