Wicket应用程序序列化和缓存所有页面以支持有状态组件,以及支持后退按钮,以及其他可能的原因.我有一个应用程序,它使用setResponsePage在屏幕之间导航.在很短的时间内,会话变得相当大,因为所有先前的页面都存储在会话中.在大多数情况下,我只需要会话来包含当前页面,原因很明显,也许最后2或3页可以使用浏览器的后退按钮轻松导航.
在我离开它之后,我可以强制页面过期吗?我知道我不想使用按钮返回到该版本的页面?更一般地说,在Wicket中处理会话增长的推荐方法是什么?
小智 7
http://apache-wicket.1842946.n4.nabble.com/Wicket-Session-grows-too-big-real-fast-td1875816.html
如果您在页面上使用了大量域对象,这些域对象最终会与其他域对象紧密耦合,请务必避免对这些对象进行序列化!
看一下LoadableDetachableModel用于包装domaing对象DataView和IDataProvider用于显示域对象列表
你不应该将域对象填充到组件的实例变量中.您不能将域对象引用设为final,以便在匿名子类中使用它们.您不能将纯粹的域对象列表传递给ListView.
也许,当你在Application类中继承WbeRequestCycle时,你可能会在页面映射中控制页面的生命周期...虽然没有尝试过,但是
归档时间: |
|
查看次数: |
2881 次 |
最近记录: |