为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕田峪2943541 2017-01-09 15:15:47
 如图,action下<result name="success"  type="redirect">/userquery.action</result>,这样在点击提交时,程序正常运行,但是表单中的数据没用。但是同样type=“redirect”的删除、更新的action就能执行成功。<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>
查看完整描述

1 回答

?
Caballarii

TA贡献1123条经验 获得超629个赞

redirect是客户端跳转,之前action里的参数是没法传递到redirect之后的action里的,所以表单里的参数没有办法传到userquery.action。

update和delete都是完成之后redirect过去的,不需要传参数到userquery.action里。

想把前一个action的参数传到后一个action里请用chain替换redirect,同时result里直接写action名

查看完整回答
反对 回复 2017-01-09
  • 慕田峪2943541
    慕田峪2943541
    修改成这样<result name="success" type="chain">userquery</result>,但是运行后的情况还是一样,数据丢失了
  • 1 回答
  • 2 关注
  • 1642 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信