1. 程式人生 > >Struts2版本升級到2.3.34

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包之後你程式碼中就會報錯,原因就是包路徑錯誤,這時候需要你修改為現包的路徑即可;