Struts2版本升級到2.3.34
Struts2現在的最新版本是2.5.16.最近要上線一個專案,經過Acunetix安全掃描,struts2存在安全漏洞,需要對struts2進行升級。檢視專案,專案本身使用的struts版本是2.2.
現在的struts2版本,相對安全的是2.3.34和最新版2.5.16.
從2.2版本到2.5.16,可以通過檢視他們的包,可以發現需要替換的包結構很多,而且我原本也是打算直接升級到2.5.16,但是替換包之後,才發現很多類的路徑即便是修改為升級後的路徑,專案訪問一樣會存在很多問題,可以說,從2.2版本到2.5.16版本我不建議升級。完全可以把2.2版本升級到相對安全的2.3.34版本。
struts2的版本從2.5以後就有了很大的變化,版本升級需要謹慎。個人建議如果自己的現行版不是很高,不在2.5以上就不要升級到2.5.16.
我從2.2版本升級到2.3.34版本,替換的包如下(到struts官網可以下載各版本的包):
commons-lang3-x.y.jar
freemarker-x.y.z.jar
ognl-x.y.z.jar
struts2-core-x.y.z.jar
struts2-spring-plugin-x.y.z.jar
xwork-core-x.y.z.jar
說明:
1、在替換commons-lang3-x.y.z.jar包的時候要注意這個包的名字,因為在包結構中還有一個包的名字是commons-lang-x.y.z.jar只是少了一個數字3.;
2、在替換了xwork-core-x.y.z.jar包之後你程式碼中就會報錯,原因就是包路徑錯誤,這時候需要你修改為現包的路徑即可;