因为struts2版本会存在版本漏洞,所以就会出现针对老版本进行升级的情况。
本次介绍的升级是struts2.1.6升级为struts2.5.2
1、官网下载最新struts2jar
网址:http://struts.apache.org/download.cgi
2、从最新下载的struts2jar中找到以下jar:
asm-5.2.jar
asm-commons-5.2.jar
asm-tree-5.2.jar
commons-fileupload-1.4.jar
commons-io-2.6.jar
commons-lang-2.4.jar
commons-lang3-3.8.1.jar
commons-logging-1.2.jar
freemarker-2.3.28.jar
javassist-3.20.0-GA.jar
log4j-api-2.11.1.jar
ognl-3.1.21.jar
struts2-core-2.5.20.jar
struts2-json-plugin-2.5.20.jar
struts2-junit-plugin-2.5.20.jar
struts2-spring-plugin-2.5.20.jar
删除原来的jar
commons-fileupload-x.y.z.jar
commons-io-x.y.z.jar
commons-lang-x.y.jar
commons-logging-x.y.z.jar
commons-logging-api-x.y.jar
freemarker-x.y.z.jar
javassist-x.y.z.GA
ognl-x.y.z.jar
struts2-core-x.y.z.jar
xwork-core.x.y.z.jar
struts2-spring-plugin-x.y.z.jar
xwork在新版本中已经整合到struts2-core中,所以只需要把老版本的xwork删掉即可。
3、修改web.xml
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
4、修改struts.xml的头文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
package中增加strict-method-invocation="false",否则无法登录
<package name="kerunsys" extends="json-default" strict-method-invocation="false">
上面配置完成后就可以启动tomcat了,能访问说明升级成功,下班了。