一、使用redirect需要後綴名,使用redirect-action不需要後綴名。
二、type=“redirect” 的值可以轉到其它命名空間下的Action,而redirect-action只能轉到同一命名空間的action,因此它可以省略.action的後綴直接寫action的名稱。如:
<result name="success" type="redirect">viewTask.action</result>
<result name="success" type="redirect-action">viewTask</result>
附:redirect-action傳遞參數
Xml代碼
<action name="enterpreinfo" class="preinfoBusinessAction" method=“enterPreinfoSub”>
<result name="success" type="redirect-action">showpreinf ? preinfo.order_number=${preinfo.order_number}</result>
<reslut name="error" type="redirect">
<param name="location">/error.jsp</param>
</result>
</action>
因爲使用了redirect-action,所以要注意不能將showpreinf ? preinfo.order_number=${preinfo.order_number} 寫成 showpreinf.action ? preinfo.order_number=${preinfo.order_number} 其中${}爲EL表達式,獲取action:enterpreinfo中屬性的值;在這個配置文件裏,多個參數的連接符使用了"&",但XML的語法規範,應該使用"&"代替"&",原理和HTML中的轉義相同,開始沒有注意,在struts分析配置文件時,總是報出這樣的錯誤;