gpt4 book ai didi

java - JSF 2.0 使用链接在请求范围 bean 之间传递对象

转载 作者:行者123 更新时间:2023-11-30 11:40:38 24 4
gpt4 key购买 nike

一段时间以来,我一直在尝试在使用不同托管 bean 的两个页面之间传递一个对象。我使用的是 jsf 2.1 和 primefaces 3.1。

我的情况:

  1. 我有一个p:dataTable,其中一列是一个h:link,用户可以点击它来编辑当前对象
  2. 点击后将打开一个新页面,其中将显示所选对象的内容以供进一步操作

我试过从第 1 页发送一些参数作为 GET 请求并从第 2 页处理它们。它有效,但这不是我想要的解决方案。我需要被选中的整个对象。我想在请求映射中传递它,或者将负责第 1 页的 bean 声明为 @SessionScoped 并从第二个注入(inject)这个 bean。

我没有成功的是在更改页面之前找出选择了哪个对象。我试过使用 ajax 或链接标记的 actionListener,但没有任何效果。在执行 actionListener 或 ajax 事件之前,页面已更改...

如何先设置选定的对象/行,然后才更改页面?

感谢您的帮助。

最佳答案

而不是使用 h:link,你会想要使用 p:commandLink,在 actionListener 中设置选定的对象,并更改oncomplete 阶段的页面,带有类似 location = 'page2.xhtml'; 的 javascript 行。

您可以在下面找到相关的标签文档。它也存在于 3.1 版本中。

http://www.primefaces.org/docs/vdl/3.4/primefaces-p/commandLink.html

PS:页面 1 或页面 2 仍然需要在 session 范围内,否则将无法正常工作。

关于java - JSF 2.0 使用链接在请求范围 bean 之间传递对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12624829/

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