struts2.3升級到2.5

網上有不少攻略,但是可能因爲每個人之前的框架和升級目標不同,所以還是走了一點彎路,記錄下來方便其他舊項目升級吧。


我的目標是把Struts2.3升級到2.5,Spring暫時維持在3.2.3。嘗試升到4結果好像不支持iBatis,而且Spring 4以上我已經搭好了Spring + SpringMVC + MyBatis的新框架。


一、升級jar

1、下載Struts2.5

下載地址:http://struts.apache.org/download.cgi#struts2516

下載完整包,這樣裏面會包含各種依賴包,比較省事。

下載鏈接:http://mirrors.tuna.tsinghua.edu.cn/apache/struts/2.5.16/struts-2.5.16-all.zip


2、解壓縮文件,對應自己項目下的jar文件,我升級瞭如下圖所示的jar。


3、刪除文件 xwork-core-2.3.15.1.jar,這個文件在2.5下已經合併到上面的包裏了。


二、修改配置文件

1、修改web.xml

由於我使用了sitemesh,所以struts2的prepare和execute是分開寫的。下圖是原先的配置

新的2.5版本下包名變了,其實就是去掉了.ng,改成如下所示。

  <filter>
    <filter-name>struts-prepare</filter-name>
    <filter-class>
			org.apache.struts2.dispatcher.filter.StrutsPrepareFilter</filter-class>
  </filter>
  <filter>
    <filter-name>struts-execute</filter-name>
    <filter-class>
			org.apache.struts2.dispatcher.filter.StrutsExecuteFilter</filter-class>
  </filter>

下圖的listener也改一下

改成

<listener>
    <listener-class>org.apache.struts2.dispatcher.listener.StrutsListener</listener-class>
</listener>


2、修改文件 struts-tags.tld

用解壓縮軟件打開文件struts2-core-2.5.16.jar,在META-INF目錄下找到文件

將文件覆蓋掉項目下WEB-INF目錄裏的原文件。


三、修改JSP文件

1、修改文件頭

改成如下

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN" "http://struts.apache.org/dtds/struts-2.5.dtd">


2、修改<s:iterator

將iterator標籤裏的id關鍵字改成var,例如

<s:iterator value = "orderList" var = "m" status="idx">


其他文章裏提到的其他標籤可能我沒用到,也可能我沒測試出來問題,以後再補充。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章