Struts 2, 值在验证失败回到原来页面的时候会丢失的解决方案
来源:互联网 发布:数据云 编辑:程序博客网 时间:2024/04/29 20:01
Struts 2, 值在验证失败回到原来页面的时候会丢失的解决方案
比如,当我要添加一个信用卡的时候,我需要信用卡的CardType, 这些数据是存在数据库中的,我要先通过action 的一个 create方法,取到信用卡的类型:
creditCardTypeList = this.creditCardTypeService.getList();
return SUCCESS;
}
Struts的配置文件:
</action>
input.jsp
<s:select name="creditCard.creditCardTypeId" list="creditCardTypeList" listKey="creditCardTypeId"
listValue="ccType" />
....
当提交input.jsp 的时候,Validate 检查没有通过,这时我需要回到input.jsp,此时应该下拉列表框的CreditType应该被保留,只需要在example.CreditCardAction 实现 Preparable接口,并实现prepare 方法,然后在add的 action中加上
<interceptor-ref name="defaultStack"/>
prepare方法:
creditCardTypeList = this.creditCardTypeService.getList();
}
Add Acton:
<interceptor-ref name="prepare"/>
<interceptor-ref name="defaultStack"/>
<result name="input">input.jsp</result>
<result name="success" type="redirect-action">
<param name="namespace">/credit</param>
<param name="actionName">list</param>
</result>
</action>
这样,在验证前将首先调用 prepare方法,即使失败了回到input.jsp页面creditCardType选择框的值仍然存在。
<interceptor-ref name="defaultStack"/> 中的 defaultStack 是我们在struts.xml 中配置的,其中我们注释掉了 <interceptor-ref name="prepare"/> 这样在example.CreditCardAction中的其他Action就不会首先执行prepare方法,只有加上了 <interceptor-ref name="prepare"/> 的才会去首先执行 prepare方法。
<interceptors>
<interceptor-stack name="defaultStack">
<interceptor-ref name="exception"/>
<interceptor-ref name="alias"/>
<interceptor-ref name="servletConfig"/>
<!--
<interceptor-ref name="prepare"/>
-->
<interceptor-ref name="i18n"/>
<interceptor-ref name="chain"/>
<interceptor-ref name="debugging"/>
<interceptor-ref name="profiling"/>
<interceptor-ref name="scopedModelDriven"/>
<interceptor-ref name="modelDriven"/>
<interceptor-ref name="fileUpload"/>
<!--
<interceptor-ref name="checkbox">
<param name="uncheckedValue">no</param>
</interceptor-ref>
-->
<interceptor-ref name="staticParams"/>
<interceptor-ref name="params">
<param name="excludeParams">dojo..*</param>
</interceptor-ref>
<interceptor-ref name="conversionError"/>
<interceptor-ref name="validation">
<param name="excludeMethods">input,back,cancel,browse</param>
</interceptor-ref>
<interceptor-ref name="workflow">
<param name="excludeMethods">input,back,cancel,browse</param>
</interceptor-ref>
</interceptor-stack>
</interceptors>
</package>
- Struts 2, 值在验证失败回到原来页面的时候会丢失的解决方案
- Struts 2, 值在验证失败回到原来页面的时候会丢失的解决方案
- Struts2 值在验证失败回到原来页面的时候会丢失的解决方案
- Struts2 值在验证失败回到原来页面的时候会丢失的解决方案
- 切换页面的时候出现一个页面闪一下,回到原来的界面
- struts上传文件,验证失败表单数据丢失的原因
- struts上传文件,验证失败表单数据丢失的原因
- thinkphp 在数据库更新(save)的时候,如果字段没有被修改,会更新失败 和数据的自动验证,插入的时候可以自动验证,但更新的时候就不能验证了
- 刷新页面时原来位置固定不动,在页面刷新的时候。MaintainScrollPositionOnPostback="true"
- 刷新页面时原来位置固定不动,在页面刷新的时候。MaintainScrollPositionOnPostback="true"
- MJRefresh下拉加载的时候,视图不会回到原来的,而是上移一段距离
- jquery.validate.js 在ie中丢失焦点的时候不触发验证
- vnc启动失败时候的解决方案
- iOS 拨打电话 拨打完以后会回到原来的应用
- 复制表的时候为什么约束会丢失
- java实现验证码生成,解决在页面验证时候session获得的总是前一次值的问题
- Struts的action中用了addFieldError,页面第一次提交验证失败后,再次提交找不到action
- 原生js innerHTML追加元素的时候会在火狐和谷歌中会清空原始填写的值,解决方案
- 网友10年跳槽经验总结
- IIS日志字段描叙
- J2se5 新特性 注释的使用
- ext.grid.EditorGridPanel 向后台传送数据
- J2EE网上学习资源
- Struts 2, 值在验证失败回到原来页面的时候会丢失的解决方案
- addEventListener的第三個參數
- c++邮件的提取程序
- ServletContext与ServletConfig的深度分析
- XML:CSS基础之五
- 谷歌中国总裁李开复涉嫌漏税500万遭调查
- 一个初级WEB应用程序应该有好的三点。
- 在 Excel 中使用高级筛选功能
- 保存GDI+绘制的图形