Wicket - 陈旧页面例外 - 如何调试?

时间:2015-01-12 13:30:42

标签: java wicket wicket-6

我的应用似乎工作正常,但在控制台中它会抛出很多StalePageException个。我不知道为什么。我如何调试此异常的原因?这个例外的原因是什么?

13:32:29,361 WARN  [RequestCycleExtra] (default task-60) ********************************
13:32:29,362 WARN  [RequestCycleExtra] (default task-60) Handling the following exception: org.apache.wicket.core.request.mapper.StalePageException

13:32:29,363 WARN  [RequestCycleExtra] (default task-60) ********************************
13:32:35,626 WARN  [RequestCycleExtra] (default task-64) ********************************
13:32:35,627 WARN  [RequestCycleExtra] (default task-64) Handling the following exception: org.apache.wicket.core.request.mapper.StalePageException

我使用最新的Wicket版本 - 6.18但我永远拥有它。

编辑:

StatementGokListPanel.java

  columns.add(new StatementLinkColumn(Model.of("")) {
     @Override
     public void onClick(IModel<StatementGokCommunity> model, AjaxRequestTarget target) {
        ComponentMode componentMode = ComponentMode.EDIT;
        MarkupContainer mc = StatementGokListPanel.this.getParent();
        GokCommunityStatementPanel panel = new GokCommunityStatementPanel("panel", model.getObject(), componentMode, true);
        StatementGokListPanel.this.replaceWith(panel);
        target.add(mc);
     }
  });

1 个答案:

答案 0 :(得分:4)

如果您尝试使用已在另一个浏览器选项卡/窗口中呈现的页面实例,则会抛出异常。由于Wicket无法知道您是否更改了其他选项卡中的页面结构,因此它只是禁止操作(例如链接点击,表单提交等),并从服务器重新呈现页面实例及其最新状态。

如果您使用浏览器的“查看(页面)源”功能,也可能发生异常。