Wicket 1.5(.2) 中的 url 更改时组件未重新加载?

2023-12-31

我第一次使用以下 URL 导航到我的应用程序:

.../主页/?0&用户=x

在调试模式下,我看到 wicket 很好地实例化了我的面板等(显然)。

如果我将 URL 更改为:

.../主页/?0&用户=y

那么什么也没有发生,面板不会重新初始化(对于新用户 => 用户 x 的数据仍然显示),也不会调用 LoadableDetachable 或其他模型。

但是,如果我将 URL 更改为:

.../主页/?1&用户=y

然后所有面板都为用户很好地初始化y

更进一步,如果您将 URL 更改回

.../主页/?0&用户=y

然后再次是用户的数据x被展示。

看起来 Wicket 并不关心 URL 中的参数发生变化来决定是否重新加载组件。 AFAIK 这在 Wicket 1.4 中运行良好。我想我理解这种行为背后的逻辑,但不确定。另外,我想知道如果自定义参数发生更改,如何强制 Wicket 重新加载,以及如何从 URL 中删除“丑陋”?0(如果可能)?


这就是 Wicket 的有状态本质。页面实例化一次,参数解析等等。稍后,您将不同的参数传递给已实例化的页面,但这次根本没有调用其构造函数,因此 PageParameters 不会更新。更改为 ?1 会向 Wicket 请求 id 为 1 的页面,并且由于不存在这样的 Wicket 实例化一个新实例并传递新参数。如果您想始终拥有最新的请求参数,请使用 getRequest().getRequestParameter("user") ,它将为您提供所需的内容。 说得通 ?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Wicket 1.5(.2) 中的 url 更改时组件未重新加载? 的相关文章

随机推荐

  • Bootstrap 工具提示显示在模式窗口后面

    我有一个模态窗口 其中包含以下内容div div class input group div class input group addon title Insert here your domain account name Html L
  • 强制 graphviz 中节点的从左到右顺序?

    我想使用 graphviz 绘制决策树图 我想要绘制的图表如下所示 我正在使用以下点语言 graph a A shape box label A B shape box label B al shape none label 0 bl sh
  • 非常简单的 jQuery .load 示例不起作用

    我认为这是一个非常简单的问题 但我似乎无法让它发挥作用 我需要使用 JavaScript 显然是 jQuery 从一个页面获取一些内容 并将其拉入另一个页面 我对此进行了相当多的研究 但似乎连一个非常简单的例子都无法工作 这是我试图从中获取
  • RESTful WCF 服务在发送“原始”XML 时返回 400 代码

    我已经为此苦苦挣扎了两天 所以希望有人能帮我 我拥有的是一个使用 WCF 编写的 RESTful Web 服务 实际上只是两个接受单个字符串参数并返回一个字符串的方法 参数和返回值都是直接的 XML ServiceContract publ
  • 使用 sortItems() 对 QListWidget 进行排序

    我在 QListWidget 上使用 sortItems 时遇到问题 发生的情况如下 改变这个 A z d C 乙 哦 我 to this A C 我 d e 哦 z 但我希望它是 A C d e 我 哦 z 有什么办法可以改变让它变得像这
  • 无法从 Team Foundation Server 2010 取消解决方案的绑定

    我有一些与 TFS 2010 绑定的解决方案 但是团队项目集合不再可用 我需要将此解决方案重新绑定到该服务器上的新团队项目集合 我尝试更改源代码管理 文件 gt 源代码管理 gt 更改源代码管理 按 更改源代码控制 后 出现 您想将解决方案
  • 是否可以修复 geom_text() 生成的锯齿状、质量差的文本?

    在向图中添加注释文本时 我注意到geom text 产生难看的 锯齿状的文本 同时annotate 生成流畅 美观的文本 有谁知道为什么会发生这种情况以及是否有任何方法可以解决它 我知道我可以使用annotate 在这里 但可能存在这样的情
  • 如何在初始化类方法之前加载 Kivy ID(Python with Kivy)

    目标 成功初始化一个类方法 create button 就我而言 在其参数中引用 kv id init 同一个类的方法 我收到以下错误 File C Users phili scrollablelabelexample py line 33
  • jquery 中的多个 attr 选择器?

    我怎样才能在 jquery 中做到这一点 SomeId input type hidden AND name somename SomeId input type hidden name somename
  • 在嵌入式 C 中使用 malloc() [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在嵌入式C编程语言中 是malloc 在单任务嵌入式系统中有用吗 我在嵌入式系统领域工作了 0 5 年 我从来没有用过malloc 在8位控制器
  • 如何使用 python 关闭程序?

    python 有没有办法关闭 Windows 应用程序 例如 Firefox 我知道如何启动应用程序 但现在我需要知道如何关闭应用程序 I have used subprocess comands for a while this prog
  • Matlab上3D数据的椭球拟合

    我正在研究一个3D体积 of CT肺部图像 为了检测结节 我需要为每个可疑结节拟合一个椭球模型 我该如何为此编写代码 结节是疑似肿瘤的物体 我的算法需要检查每个物体 并将其近似为椭球体 并根据椭球体参数计算8个特征来构建分类器 通过训练和测
  • Rails:切换用户 Gem 以及切换回原始用户的问题

    在我的应用程序中我正在使用switch user https github com flyerhzm switch user https github com flyerhzm switch user gem 允许管理员以另一个用户身份登录
  • BASH:基本 if then 和变量赋值

    我习惯了 csh 所以不得不使用 bash 有点令人恼火 这段代码有什么问题 if time gt 0300 time lt 0900 then mod 2 else mod 0 fi 按照标准应该是 if time gt 300 time
  • 有没有办法了解导致“_NSTouchBarFinderObservation”崩溃的原因?

    我的 Crashlytics 显示多个用户遇到以下崩溃 见下文 我能够重新创建这个的唯一方法 我怀疑用户正在这样做 是打开 Xcode Touch Bar 模拟器并在generations当应用程序运行时 以下设备和操作系统已报告崩溃 ma
  • 一个测试用例应该涵盖多少内容?

    到目前为止 我从未编写过正确的测试 只编写了测试成功后我会处理的小程序 我正在浏览Python的unittest网络上的模块和教程 但我不清楚 一个应该多少钱TestCase覆盖 我在网上看到过一些例子TestCase仅具有一种方法的类 以
  • 从 Postgres 和 jOOQ 中的分层表递归生成 JSON 树

    我在 Postgres 数据库中有一个分层表 例如category 结构很简单 如下所示 id parent id name 1 null A 2 null B 3 1 A1 4 3 A1a 5 3 A1b 6 2 B1 7 2 B2 我需
  • 当我需要其他内容时,BASH 脚本正在等待

    我的 bash 脚本需要一些帮助 bin bash zenity list title Select Server text Select the server to start radiolist column column Server
  • 如何收集实时推文? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何使用 Ruby 收集实时推文并将
  • Wicket 1.5(.2) 中的 url 更改时组件未重新加载?

    我第一次使用以下 URL 导航到我的应用程序 主页 0 用户 x 在调试模式下 我看到 wicket 很好地实例化了我的面板等 显然 如果我将 URL 更改为 主页 0 用户 y 那么什么也没有发生 面板不会重新初始化 对于新用户 gt 用