gpt4 book ai didi

java - 跨多个请求周期保留组件状态

转载 作者:太空宇宙 更新时间:2023-11-04 08:37:15 25 4
gpt4 key购买 nike

有关 Apache Wicket 1.4.x 组件状态管理的问题

我有一个可添加书签的有状态页面,其中包含一个具有设定搜索条件的表单。用户搜索与所选条件匹配的项目,然后导航离开页面(例如,转到详细的项目 View )。在某个时间点,用户可以使用可添加书签的链接返回到搜索页面。我希望将最后一个搜索条件预先选择为默认选择。但是,BookmarkablePageRequestTarget 似乎在其 #respond(RequestCycle) 方法中创建了目标页面的新实例,从而丢失了先前的状态(支持搜索表单的 bean)。

当然,我可以手动管理表单状态并将其存储在 WebSession 子类中,但我想知道是否有更好的方法来跨多个请求周期保留组件状态,例如让 Wicket 重新使用目标页面的现有实例?理想情况下,这适用于书签链接。

最佳答案

通常,组件的状态存储在组件实例本身中。 (直接在其中,或间接在模型中。)

因此,您真正需要做的就是创建一个指向搜索页面实例的链接,或者使用页面实例或类似内容调用 setResponsePage(),具体取决于您重定向用户的方式。

通常情况下,您根本不应该触及请求目标,除非实际情况比您所描述的情况复杂得多。

关于java - 跨多个请求周期保留组件状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6087899/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com