【发布时间】:2016-06-08 04:56:01
【问题描述】:
看起来,出于某种原因,Wicket 认为我们的一些组件是有状态的,因此一些页面也变得有状态。是什么让 Wicket 假定组件不是无状态的?如果目标是尽可能地实现无状态,那么有哪些注意事项(以及应该使用什么代替)?
【问题讨论】:
看起来,出于某种原因,Wicket 认为我们的一些组件是有状态的,因此一些页面也变得有状态。是什么让 Wicket 假定组件不是无状态的?如果目标是尽可能地实现无状态,那么有哪些注意事项(以及应该使用什么代替)?
【问题讨论】:
通常 Ajax 组件和行为使页面有状态。您可以使用 WicketStuff-Stateless 库将它们替换为无状态版本。
除此之外,您应该将Form 组件的用法替换为StatelessForm,并将Link 替换为StatelessLink。
您可以使用 wicket-devutils 的 StatelessChecker 找出使页面有状态的组件/行为。
【讨论】:
StatelessXyz 版本实际上是从各自的Xyz 组件扩展而来的。他们只是尽量为下一个目的地保留尽可能多的上下文信息,其中上下文表示页面参数。