Wicket - 单击浏览器后退按钮时重定向到同一页面

时间:2015-08-19 06:46:21

标签: java browser web-applications wicket back-button

我有一个使用Wicket框架的Web应用程序。它有一个用户输入的表单,在提交时,重定向到另一个页面。提交表单并单击浏览器的后退按钮后,将使用输入的值从缓存中检索上一个表单。当按下浏览器后退按钮时,我需要覆盖此行为并重定向到后一页(保持在同一页面上)。在Wicket这可能吗?如果是这样,请指导我如何实现这一目标。谢谢。

2 个答案:

答案 0 :(得分:1)

Wicket会处理网址,因此,如果页面ID识别了上一页,则默认情况下会将其添加到网址中,例如HTTP:/dummyexample.com 1

我用来解决这个问题的是一个流程引擎,它将模型对象的状态保存在其中。例如。你有一个MyFlow类型的模型对象,其中包含一个字段' String currentState'。在这种情况下,如果您需要一个错误的页面,这不属于您的流程所在的阶段,您可以从一个控制者重定向到相关页面,或者onIntialize()抛出' RestartResponseException'这会导致重定向到新页面。

答案 1 :(得分:0)

只需使用Ajax提交,这样用户就无法通过后退按钮返回输入表单。