将参数传递给 JSF 中的视图作用域 bean

2023-12-31

假设我的 JSF 2 应用程序中有两个页面:第一页显示对象表(汽车或其他内容),另一个页面能够显示一个特定对象的详细信息。 表页位于请求范围内,因为每次用户请求时都应重新加载对象。详细信息页面在视图范围内。 因此,当我单击表格内的某个对象时,该对象应该显示在详细信息页面中。通过重定向,我可以转到详细信息页面,但详细信息页面是空的,因为生成了新的视图。 好的,我可以将范围更改为会话,但这会导致其他问题,所以我希望将详细信息页面放在视图范围中。有没有办法将参数传递给新生成的视图范围 bean?

UPDATE 1

这是第一次尝试使用视图参数的代码片段。正如评论的那样,这是行不通的。该值作为请求参数传递,但在目标页面中该值为空。

表页:

<h:button value="Go to details" outcome="targetPage">
     <f:param name="carId" value="This is a test" />
</h:button>

详情页:

<f:metadata>
    <f:viewParam name="carId" value="#{bean.id}" />
    <f:event type="preRenderView" listener="#{bean.loadData}"/>
</f:metadata>

Bean的详细信息页面:

private String id;

public String getId() {
    return id;
}

public void setId( String id ) {
    this.id = id;
}

public void loadData() {
    System.out.println( "Id: " + id );
}

UPDATE 2

我发现了我的错误。元数据部分位于模板文件内。当我将标签放入详细信息页面的主文件时,它就起作用了。非常感谢。


使用视图参数是最适合您的情况的方法。您实际上并不需要执行 REDIRECT,而是执行普通的 GET 请求:

<h:button value="Go to details" outcome="carDetails">
    <f:param name="carId" value="#{currentCar.id}" />
</h:button>

这会将您指向以下地址:carDetails.xhtml?carId=1

之后,在你的汽车详情.xhtml页面,获取视图参数并加载该车的信息:

<f:metadata>
    <f:viewParam name="carId" value="#{carDetailBean.carId}" />
    <f:event type="preRenderView" listener="#{carDetailBean.loadData}"/>
</f:metadata>

Where CarDetailBean#loadData只需加载您的汽车的信息,以使用已设置到 bean 中的给定 id 来显示。

也可以看看:

  • h:button 和 h:commandButton 之间的区别 https://stackoverflow.com/questions/13070537/difference-between-hbutton-and-hcommandbutton
  • 、 和 可以用来做什么? https://stackoverflow.com/questions/6377798/what-can-fmetadata-and-fviewparam-be-used-for
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将参数传递给 JSF 中的视图作用域 bean 的相关文章

  • clearInterval() 不起作用[重复]

    这个问题在这里已经有答案了 可能的重复 JS 如何在使用 setInterval 后清除间隔 https stackoverflow com questions 8266726 js how to clear interval after
  • viewExpiredException JSF [重复]

    这个问题在这里已经有答案了 为了处理 JSF 中的 viewExpiredException 我编写了代码
  • JSF 1.2:如何在同一视图上的回发中保持请求范围的托管 bean 处于活动状态?

    是否可以在同一页面上的回发过程中保持请求作用域的 bean 处于活动状态 一般的问题是 bean 在请求结束时被丢弃 并在每次表单提交时重新创建 例如动态操作背后的布尔值disabled readonly and rendered重置为默认
  • 如何使用jsf组件显示丰富的内容?

    我使用 rich 编辑器组件输入丰富的内容 并将其保存在数据库中 当我尝试在 outputText 字段中显示它时 丰富的标签不会被解释并显示为简单文本 所以我的问题是 如何让 jsf 组件 或 Richfaces 解释这些丰富的内容并正确
  • Pretty Faces:通用 URL 映射

    使用 Pretty Faces 3 我有一些像这样的映射
  • JSF中直接更改URL来限制用户访问页面

    我的应用程序中有两种用户 客户和卖家 我正在使用一个PhaseListener在JSF中防止用户在未登录的情况下访问页面 但在登录后我不知道如何防止用户更改地址栏中的URL并访问他也不允许的页面 例如 阻止客户访问卖家页面 有谁知道我如何防
  • 传递给命令 WPF 的多个参数[重复]

    这个问题在这里已经有答案了 我有以下层次结构 abstract class TicketBase public DateTime PublishedDate get set class TicketTypeA TicketBase publ
  • ui:define with generated="false" 属性仍然呈现

  • jsf中的会话注销问题

    我正在开发一个 Web 应用程序 并使用框架 jsf hibernate 和 spring 应用程序中有不同类型的用户 根据此处登录的用户类型 我为不同的用户类型启用菜单中的链接 用户登录后 会向用户提供菜单栏中的注销链接 我已经编写了 l
  • JavaScript 中提升名称解析顺序如何工作?

    我遇到一个有趣的quiz http davidshariff com js quiz q 5 function bar return foo foo 10 function foo var foo 11 alert typeof bar 我
  • 如何从沙发底座获取所有钥匙?

    我使用python语言从couchbase获取所有密钥 以下是我的代码 function doc meta emit null meta id 这是 namedb 存储桶中的视图 from couchbase import Couchbas
  • SqlCommand 参数与 String.Format [重复]

    这个问题在这里已经有答案了 我一直在互联网上搜索 但似乎找不到任何可以解释我的问题的内容 可能是我没有使用正确的搜索字符串 所以我在这里发帖希望有人可以帮助我有了这个 我的程序是使用Visual Studio 2010用C 编写的 我注意到
  • 使用自定义服务的编译器传递加载 Symfony 的参数

    根据这个问题如何从数据库加载 Symfony 的配置参数 Doctrine https stackoverflow com q 28713495 8945214我有一个类似的问题 我需要动态设置参数 并且我想提供来自另一个自定义服务的数据
  • 在Android中绘制带有曲线底部的矩形视图

    美好的一天 我想画一个矩形作为视图 但底部应该是弯曲的 我不想应用这样的背景图像或使用任何视图 因为如果我使用视图并设置背景 曲线部分仍然会有不可见的空白空间 我将无法将另一个曲线图像附加到自定义视图的底部曲线 那么我该如何绘制一个带有底部
  • Android 自定义布局 - onDraw() 永远不会被调用

    public class MainActivity extends Activity Override public void onCreate Bundle savedInstanceState super onCreate savedI
  • onclick 事件中未调用函数

    我想在每个 YouTube 链接的末尾添加一些 HTML 以在 litebox 中打开播放器 到目前为止 这是我的代码 document ready function var valid url new RegExp youtube com
  • PrimeFaces 对话框参考父级

    我有一个 xhtml 页面 显示带有条目的数据表 我还有一个用于插入新条目的按钮 该按钮显示一个包含表单的对话框 插入表格用作
  • 在node控制台中使用require和在html中使用script标签有什么区别

    我是js世界的新手 这真的让我很困惑 昨天我开始在我的代码中配合underscore js 所以我开始在REPL环境中尝试它 我选择使用Node控制台 我想出了var require underscore js 然后一切正常 今天我尝试使用
  • Primefaces 中动态生成条形图

    我正在使用 Primefaces 4 0 我需要根据查询结果的数量生成条形图 条形图的标题和颜色也应该能够为所有使用查询结果的人动态设置 条形图示例如下
  • 如何获取之前的URL?

    我需要调用我的网络应用程序的 URL 例如 如果有一个从 stackoverflow com 到我的网站 foo com 的链接 我需要 Web 应用程序 托管 bean 中的 stackoverflow 链接 感谢所有帮助 谢谢 并不总是

随机推荐

  • 如何在给定范围内插入 1000 个随机日期?

    我是 SQL Server 新手 我需要生成从给定日期范围中选择的随机日期 就像雇员的受雇日期应该介于2011 01 01 and 2011 12 31 生成的日期应随机插入到 1000 行表中 任何人都可以指导我解答我的疑问吗 decla
  • Spring 集成和重试:我是否需要为每个服务激活器使用单独的重试 bean?

    我有一个 spring 集成管道 并且有许多不同的服务激活器 我想启用重试 我想使用相同的重试策略 即重试次数 退避策略等 我可以只使用一个实现重试策略的 bean 并将其用于多个不同的服务激活器 还是每个服务激活器都需要自己的重试 bea
  • 使用 sketch.js 为移动网页绘制画布会重置 ontouch

    我正在使用sketch js用于在 HTML5 画布上绘图的插件 虽然它在台式电脑上运行良好 但在移动浏览器上似乎存在一些问题 问题是如果我画两个不同的形状 一旦我触摸画布 它就会重置为空白 为了完全清楚 我会做并且example 绘制数字
  • 具有 ClipboardData 属性的 Angular2 组件

    我有一个 Angular2 组件 它具有从剪贴板粘贴数据的方法 inputPaste event let clipboardData event clipboardData 这种方式不适用于 IE10 但 IE 有一个带有属性 Clipbo
  • Firebase - 用户对事物的评论[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在构建一个 Android 应用程序 允许用户对广告牌前 100 名上的每首歌曲发表评论 我从 JSON 文件中解析了该信息 我将
  • 可以“跳过”行的数组公式

    我需要在谷歌电子表格中引入功能 该功能将允许用户编辑数组公式的结果 提出此要求的原因是 ARRAYFORMULA 为一组单元格设置默认值 但用户有时需要覆盖这些默认值 我想知道这是否有可能 example Row Array 1 Array
  • 算法:从一组游戏中选择成对的球队

    我正在尝试为体育联盟创建一个调度程序 我想将球队分组 以便每个球队每组进行一场比赛 我认为我正在尝试做的事情是计算机科学中现有的问题 但我不知道它叫什么 而且我很难找到有关它的信息 不管怎样 情况如下 假设我有一组团队A 1 2 3 n 以
  • 您在编写单元测试时最常犯的错误是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 您在编写单元测试时最常犯的错误是什么 耦合 缺乏凝聚力 尝试一次测试太多功能 没有测试足够的功能 如果您有该错误的示例 请发布一些示例代码 根本
  • 如何防止用户代理显示无法识别的 MIME 类型的下载窗口?

    如果您设置Content Disposition标头至attachment 这会导致用户代理始终显示该文件的下载窗口 我想做与此相反的事情 强制用户代理始终直接显示响应 在这种特殊情况下 我有一个发送 JSON 的 API 我想把它作为ap
  • Flexbox 项目多行文本溢出

    我有一个弹性物品 里面有很长的绳子 我想把它包裹起来 但这不起作用 I set flex 1 1 500px 例如 flex basis 500px 并且它应该用以下内容包裹字符串word wrap break word 但事实并非如此 而
  • Kinesis 流待处理消息计数

    我正在尝试将 AWS Kinesis 流用于我们的数据流之一 我想出于操作目的监视流上的待处理消息 根据积压向下游扩展 但无法找到任何在我的流中提供 大约 待处理消息的 API 这看起来很奇怪 因为消息在 7 天后就会过期 如果生产者和消费
  • Java 程序为音频文件创建 PNG 波形

    如何使用 Java 将 Wav 文件转换为 PNG 波形图像文件 java MyProgram class path to wav file path where to write png file 预期成绩 指定路径中保存的png是传入的
  • 更改 .png 以与 JpegImagesToMovie.java 一起使用

    我正在使用 JpegImagesToMovie java 将图像转换为 mov 文件 我想知道是否可以编辑它来处理 png 文件 因为视频的质量不是很好 更改它会改善它 ImageIO write img png new File C Us
  • 何时使用define_singleton_method v Define_method

    在一个答案中这个问题 https stackoverflow com questions 19368437 how to use define method inside initialize用户 mu 太短 解释说您不希望对象的行为在初始
  • QML Row 与 RowLayout

    我正在尝试为我的应用程序编写一个顶栏 其中应主要包含应用程序徽标 小图像 和应用程序标题 仅文本 此外 我希望这个顶栏能够根据窗口的高度自动调整大小 我是 QML 新手 但我想我应该将这些组件包装在Row or a RowLayout ht
  • Swift 在 UILongPress 上保留 UISwitch 状态

    我在我的项目中添加了 UISwitch 上的 UILongPressGestureRecognizer class ViewController UIViewController UIGestureRecognizerDelegate va
  • 从 sqlite 触发器调用 Java 方法 (android)

    我想要使 用 sqlite 触发器注册回调方法 例如 public void printLog Log i TAG 1 row added 在 sqlite 中插入任何行后调用此方法 是否可以 怎么做 SQLite 提供数据变更通知回调 h
  • 使用 GWT 使用 XMLHttpRequest 发送 XML

    目前我使用 JavaScript 代码在 GWT 中发送 XML 数据 有没有更简单的方法来发送它们 sendRequest addClickHandler new ClickHandler Override public void onC
  • Swift:键盘显示时向上滚动视图

    我有一个滚动视图 我想在显示键盘时向上滚动 当键盘显示时 我因以下错误而崩溃 2014 09 29 14 48 50 738 swrd 1563 472888 swrd EditPhotoViewController KeyboardWas
  • 将参数传递给 JSF 中的视图作用域 bean

    假设我的 JSF 2 应用程序中有两个页面 第一页显示对象表 汽车或其他内容 另一个页面能够显示一个特定对象的详细信息 表页位于请求范围内 因为每次用户请求时都应重新加载对象 详细信息页面在视图范围内 因此 当我单击表格内的某个对象时 该对