wicket – 链接到有状态页面的最新版本

我有一些状态页面,每个页面都有一些状态.例如,每个页面都有一个提交的表单.

如何组织一个菜单,其中包含指向这些有状态页面的最新版本的链接?我应该在任何地方(可能在会话中)存储每个页面的适当对象的引用吗?如果我使用

onClick() { setResponsePage(MyPage.class); }

比我丢失了以前的页面状态.我想链接到页面的最后状态.

最佳答案
每次呈现页面时,都会在会话中存储页面的ID.

int pageId = pageInstance.getPageId();

列表或堆栈数据结构可用于保存标识符.

您可以使用转发器(RepeatingView等)实现导航菜单,该转发器为会话中的每个页面ID创建新链接.

在链接的单击处理程序中,您可以按如下方式重定向用户:

Page pageInstance = (Page) new PageProvider(pageId, null).getPageInstance();
setResponsePage(pageInstance);

转载注明原文:wicket – 链接到有状态页面的最新版本 - 代码日志