第一種方式:
<action name="adminEnterpriceculturesave" class="adminEnterpriceculturesaveAction" method="save">
<result name="success" type="redirectAction">/admin/adminEnterpriceculturelist.action?enterpriceculture.enterpricetype=A</result>
盡管不好看格式,但是卻很容易懂.
第一種方式的/admin不是命名空間,暫時(shí)我還沒(méi)時(shí)間去實(shí)踐他,現(xiàn)在有點(diǎn)忙..因?yàn)槲业拿臻g是這樣的
<struts>
<package name="enterpriceculture" namespace="/" extends="struts-default">
<action name="adminEnterpriceculturesave" class="adminEnterpriceculturesaveAction" method="save">
<result name="success" type="redirectAction">/admin/adminEnterpriceculturelist.action?enterpriceculture.enterpricetype=A</result>
<!-- <param name="enterpriceculture.enterpricetype">A</param>
<result name="success" type="chain">
<param name="actionName">adminEnterpriceculturelist</param>
<param name="namespace">/</param>
</result>-->
<!-- <result name="success">/admin/Enterpriceculture_List.jsp</result>-->
</action>
</package>
</struts>
第二種方式:
<param name="enterpriceculture.enterpricetype">A</param>
<result name="success" type="chain">
<param name="actionName">adminEnterpriceculturelist</param>
<param name="namespace">/</param>
</result>
去掉命名空間因?yàn)槭窃诒疚募倪@個(gè)adminEnterpriceculturelist進(jìn)行跳轉(zhuǎn),所以理解起來(lái)容易很多..
綜合找到網(wǎng)上有關(guān)資料:如下:
chain類型 如下:
<action name="getTemplate" class="tabAction" method="getTemplateByParas">
<param name="objectId">${objectId}</param>
<param name="param1">${param1}</param>
<param name="items">${items}</param>
<result name="success" type="chain">
<param name="actionName">${actionName}</param>
<param name="namespace">${namespace}</param>
</result>
</action>
這樣就可以實(shí)現(xiàn)傳參了,這里的參數(shù)所有對(duì)象都可以傳,包括map,List,set 等集合也可以。同時(shí)這里還需要注意一個(gè)小問(wèn)題,chain這種類型是XWork中的result類型,它對(duì)應(yīng)的類是:
com.opensymphony.xwork2.ActionChainResult . 這里需要注意一個(gè)小問(wèn)題, actionName,namespace都是他的屬性,所以對(duì)于傳過(guò)的URL參數(shù)要做一下處理。
actionName必須是Action的名稱,namespace是他命名空間,必須以"/"開頭,如:
/tab/getTemplate.action 則 namespace="/tab" ; actionName=”getTemplate“;