猿问

Struts2配置文件下rusult类型为redirect时,提交表单会丢失数据

 

如图,action下<result name="success"  type="redirect">/userquery.action</result>,这样在点击提交时,程序正常运行,但是表单中的数据没用。

但是同样type=“redirect”的删除、更新的action就能执行成功。

http://img.mukewang.com/5873368700014d7409000463.jpg

<package name="struts2" extends="struts-default">

<action name="login" class="loginAction">

<result name="success">/success.jsp</result>

<result name="failer">/error.jsp</result>

</action>

<action name="user" class="userAction">

<result name="success"  type="redirect">/userquery.action</result>

</action>

<action name="userquery" class="userQueryAction">

<result name="success">/query.jsp</result>

</action>

<action name="userdelete" class="userDeleteAction"> 

<result name="success" type="redirect">/userquery.action</result>

</action>

<action name="userupdate" class="userUpdateAction">

<result name="success" type="redirect">/userquery.action</result>

<result name="input">/update.jsp</result>

</action>

</package>


慕田峪2943541
浏览 1655回答 1
1回答

Caballarii

redirect是客户端跳转,之前action里的参数是没法传递到redirect之后的action里的,所以表单里的参数没有办法传到userquery.action。update和delete都是完成之后redirect过去的,不需要传参数到userquery.action里。想把前一个action的参数传到后一个action里请用chain替换redirect,同时result里直接写action名
随时随地看视频慕课网APP

相关分类

Java
MySQL
我要回答