您好,我正在使用带有方法的 strut Action 类在页面上进行设计。当我正确调用方法并获得成功结果时。但是当我刷新成功页面时我遇到了问题,它再次提交数据库中的前一个页面值。如何避免这个。
我的第一个jsp页面表单
<form name="manualorder" action="manual_order" onsubmit="return validation();">
struts.xml
<action name="purchaseorder" class="materialTypeMasterAction" method="createorder" >
<result name="success">/pages/procurement/PurchaseOrder.jsp</result>
</action>
<action name="manual_order" class="materialTypeMasterAction" method="enquiry_process">
<result name="success">/pages/procurement/success.jsp</result>
</action>
当我再次刷新此成功页面时,它再次调用 enquiry_process 方法
并提交我在第一个操作的 createorder 方法中创建的先前值。
最佳答案
您可以使用重定向操作解决您的问题。 只需如下更改您的 struts 文件(我已经添加了一个成功的操作:
<action name="purchaseorder" class="materialTypeMasterAction" method="createorder" >
<result name="success">/pages/procurement/PurchaseOrder.jsp</result>
</action>
<action name="SuccessAction" class="SuccessPage">
<result name="success">/pages/procurement/success.jsp</result>
<action name="manual_order" class="materialTypeMasterAction" method="enquiry_process">
<result type="redirectAction">SuccessAction</result>
</action>
请不要忘记创建 SuccessPage
类
关于jsp - Struts Action 重新提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24573402/