Java Web - Struts 2 redirect to action with parameter

在我寫Struts 2 Web時,有一個例子是在一個資訊內容呈現的頁面,若多實作add comment的

功能,當我留言之後,常理來說應該還是停留在原頁面,不過還是得帶出原本一開始進入

的頁面資訊,因此這邊就要說一下如何再返回一action時再帶入參數。

透過這個URL http://localhost:8080/login/information_detail.action?id=6來進入一個資訊頁面,

在呈現資訊部分帶入了id = 6的param,也就是讓information action的java檔的setter method幫

我們帶入資料。但是當我們在該頁面下留言了,畫面如下:


送出後,我是經由comment action來處理新增留言的部分,若要redirect to infomation action的話

您可以在struts.xml的comment部分設定如下:
<result type="redirectAction">
    <param name="actionName">information_detail</param>
    <param name="id">%{infomationID}</param>
</result>
請注意param name="id" id的名稱指的是原本呈現資訊頁面時參數的帶入名稱,需對應到,

而%{infomationID}為comment action內 define的變數,可透過setter給它設定值。

如此,不僅一如往常呈現資訊內容,留言也順利新增上去,而留言的部分是透過information

action帶出的囉!

留言