【问题标题】:Creating Pages with unique PageMaps使用独特的 PageMaps 创建页面
【发布时间】:2010-03-10 14:09:27
【问题描述】:

我有一个长寿命页面的检票口应用程序。我希望使用唯一的 PageMap 创建此 Page 的每个实例,原因是我不会进入这里,但是当我尝试在我的 Page 的构造函数上指定一个 PageMap 时,我最终会遇到 OOM 和 StackOverflow 错误。代码如下:

public <CTOR>() {
    super(Session.get().newPageMap("" + System.currentTimeMillis()));
    ...

我正在使用自定义 BookmarkablePageLink(自定义因为它不会将当前 PageMap 名称传递给新 Page)来有效地放弃旧的 Page/PageMap 并使用新的 PageMap 创建一个新的。错误似乎来自仅创建两三个页面后的页面序列化。

谁能发现这种方法的问题?

【问题讨论】:

    标签: java wicket


    【解决方案1】:

    我怀疑反序列化将调用此构造函数,因此您获得的 PageMaps 比您预期的要多。

    【讨论】:

    • 好电话,我不确定这是否是问题所在,但我可能应该调用 pageMapForName(pageMapName, true) 。谢谢!
    • 如果你真的只在创建页面而不是在反序列化页面时才想要一个新的PageMap,你可能应该将PageMap作为构造函数参数,并在调用者,或者只是将名称作为构造函数参数并在调用者中进行名称构造。 Anantha 是正确的,您可能会在核心开发人员闲逛的地方得到更好的答案,尽管我认为我至少在 SO 上看到过其中一个。
    【解决方案2】:

    如果您在 wicket 用户邮件列表。邮件列表非常活跃,核心开发人员会回答 大部分问题。

    【讨论】:

      猜你喜欢
      • 2013-04-05
      • 2015-09-24
      • 2011-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多