Struts2 令牌会话侦听器未提交修改的表单

Struts2 令牌会话侦听器未提交修改的表单,struts2,interceptor,Struts2,Interceptor,我的应用程序使用struts2框架。我有两个页面。第1页,其中form1具有可修改的数据和提交按钮。我正在使用令牌会话拦截器来防止表单重新提交。单击从第1页提交时,它将调用一个操作并导航到第2页,并显示成功/失败结果 问题是,如果我使用第2页的“浏览器后退”按钮导航回第1页,并修改一些form1数据,然后单击“提交”,则令牌会话侦听器不会再次调用该操作,而是使用以前的结果导航到第2页 使用“浏览器后退”按钮时,如果数据没有更改,我需要防止表单重新提交;另一方面,如果有修改,我需要提交数据。您需要

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

问题是,如果我使用第2页的“浏览器后退”按钮导航回第1页,并修改一些form1数据,然后单击“提交”,则令牌会话侦听器不会再次调用该操作,而是使用以前的结果导航到第2页


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

您需要告诉浏览器不要缓存任何内容,因此当单击“后退”按钮时,浏览器会尝试再次加载页面。为此,您需要编写一个缓存拦截器,该拦截器将头设置为响应,以指示浏览器不缓存页面。请参阅。

将表单数据放入cookies中,然后在使用javascript提交时进行比较