令牌会话拦截器不提交修改后的表单

时间:2014-07-09 08:02:04

标签: struts2 interceptor

我正在为我的应用程序使用struts2框架。我有两个页面。带有form1的Page1具有可修改的数据和提交按钮。我正在使用令牌会话拦截器来防止表单重新提交。在从page1单击提交时,它将调用操作并导航到Page2并显示成功/失败结果。

问题是如果我使用Page2中的浏览器后退按钮导航回Page1并修改某些form1数据并单击提交,令牌会话拦截器不会再次调用该操作,而是导航到具有先前结果的Page2。

使用浏览器后退按钮时,如果数据没有变化,我需要阻止重新提交表单,另一方面,如果有修改,我需要提交数据。

1 个答案:

答案 0 :(得分:0)

您需要告诉浏览器不要缓存任何内容,因此当单击后退按钮时,浏览器会尝试再次加载页面。为此,您需要编写一个缓存拦截器,它将标头设置为响应,以指示浏览器不缓存页面。请参阅Why after logout clicking back button on the page displays previous page content