问题标签 [backing-beans]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jsf-2 - #{column} 语法——支持 bean 在哪里?
我在我的一个 .xhtml (JSF/Primefaces) 文件(下面更完整的代码)中看到了诸如itemLabel="#{column}"
和之类的语法itemValue="#{column}"
,但我不确定是什么#{column}
引用。
我理解类似的语法value="#{docSearchPersonalizationBean.sourceCount}"
,但是#{column}
JSF EL 是什么?如何判断正在引用哪个属性/对象?
jsf - 当 preRenderView 事件跳转到嵌套支持 bean 中的另一个视图时,面对消息未显示
我有两种情况。第一个,从外部 URL,我访问一个包含 preRenderView 事件的视图 (V1)。支持 bean 中执行的方法导航到另一个视图 (V2)。在 V2 中,我有一些与支持 bean (BB1) 相关联的元素。此外,V2 包含另一个视图,其中包含另一个支持 bean (BB2)。
BB2 发生错误时,错误不会显示,但如果 BB1 发生错误,则错误显示没有任何问题。
第二个,如果我访问 V1 并且此事件没有导航到其他视图,则 V1 呈现。在 V1 中是一个带有导航到 V2 的按钮的表单。这样,无论错误发生在哪里,都会显示 BB1 的错误和 BB2 的错误。
¿ 第一个场景中没有显示关于 BB2 错误的任何想法?
先感谢您
jsp - .jsp 页面的 ejb 值
我有 2 个在支持 bean 中传递数据的 xhtml 表单。我正在尝试将数据从第一个 xhtml 传递到旧版 jsp 页面,但我无法让它工作。我让它在第二个 xhtml 页面中工作,所以我只希望它在 jsp 中做同样的事情。这是2个xhtml页面:
感谢您的任何帮助!
jsf - 单击提交按钮时,新值未保存在 jsf 支持 bean 用户变量中
我正在创建一个用于向用户添加电话的页面。
xhtml页面:
后备豆:
当我单击提交按钮时,它应该在其列表中为用户添加新手机并刷新数据表。我的问题是,当它提交时用户变量没有更新(它已更新但在刷新时它会清除变量),这可能是由于构造函数引起的,但如果我删除初始化,则会引发 Null 指针异常。
看到这个帖子,但没有工作。尝试将 bean 属性更改为SessionScoped(javax.enterprise.context.SessionScoped)
但此异常引发org.jboss.weld.exceptions.DeploymentException: WELD-000072: Bean declaring a passivating scope must be passivation capable. Bean: Managed Bean [class com.totempool.admin.beans.AddUserBean] with qualifiers [@Default @Any @Named]
java - 使用 JTA 持久化上下文而不设置 hibernate.transaction.jta.platform
我正在用尽可能少的重新编程来更新旧应用程序。我用一些测试数据创建了一个类似于旧页面的页面,以确保我可以使用 ejb / jpa 创建链接,但我遇到了问题。我将发布 jsp、persistence.xml 和错误。在研究了网络之后,我仍然不明白问题是什么或如何解决它。谢谢你。
jsp
持久性.xml
错误:
jsf-2 - 在 facelets 模板上重用 JSF2 View Scoped Bean
在页面上执行任何其他操作之前,我有一个共同的任务是选择一个或多个“LocalizacaoTO”。
目前,数据检索/处理/ajax 事件等的逻辑是在一个ViewScoped
名为“SeletorLocalizacaoMB”的 bean 上维护的,我想在同一页面上使用同一个 bean 的多个实例。
首先我使用复合组件,但是当我选择一个节点时,它存储在页面上的最后一个 bean 上。
如果我在 TesteSeletorMB 上声明了 3 个实例:
无论我使用页面上的哪个组件,instanceThree 始终保存值。
根据一些研究,我了解到复合组件不是解决此问题的理想解决方案。
所以我更改了 UI 实现并使用 Facelets 创建了一个名为 seletor.xhtml 的“模板”。
测试页面使用<ui:include>
测试 Bean 持有多个实例:
'seletor.xhtml' 上使用的 CDI Bean
在我的示例中,我希望 TesteSeletorMB 变量(seletorAlpha 和seletorBravo)在它们的列表中保持不同的值。可能吗?
我试图将 SeletorLocalizacaoMB 范围更改为@Dependent
但它也没有工作。这就是事情变得混乱的地方。阅读CDI API,第一个状态说:
使用范围 @Dependent 声明的 bean 与具有其他 >built-in 范围类型的 bean 的行为不同。当一个 bean 被声明为具有@Dependent 范围时:
多个注入点之间不会共享任何注入的 bean 实例。
它不应该拥有相同的实例,对吧?!
环境
- WebSphere 应用服务器 8.5.5.2
- Apache MyFaces 2.0.2
- PrimeFaces 5.0
- OmniFaces 1.7
如有必要,我可以提供额外的数据。我没有粘贴所有的“SeletorLocalizacaoMB”代码,因为它有很多依赖项,我觉得问题与类如何处理操作无关。
jsf - 支持和管理 Bean 的使用
我对 Backing and Management Beans 的使用有点困惑。根据我的理解,Backing Bean 与视图相关联并包含 UI 逻辑,而托管 Bean 基本上只是一个标准 bean。
我几乎想将它们与我在 struts 应用程序中使用的表单和 bean 进行比较,尽管该表单不包含任何 UI 逻辑。
因此,假设我在 JSF 应用程序中有一个页面,用户可以从中输入有关汽车的信息。Car 有一个支持 bean,其中包含表单和 UI 逻辑中包含的所有信息。
现在,每隔 [n] 小时,我就会将此信息发送到一个外部服务,该服务用它做各种不同的事情。我应该有一个单独的 Car 托管 bean 供后台进程使用,还是应该重用 Car 支持 bean?
此示例中的支持 bean 是视图的一部分,托管 bean 是模型吗?
我计划将业务逻辑委托给帮助类,我会使用支持 bean 中的信息创建一个托管 bean,然后将托管 bean 发送到帮助类吗?还是我应该发送单个字段值?
我想这是三个问题,而不是一个。抱歉问题的复杂性,我真的不知道如何简化它。
primefaces - backingBean 没有收到 commandButton 动作
我使用渲染的 commandButton 和其他按钮来保存输入数据,但支持 bean 不接收来自视图的输入。我在这篇文章[post]中尝试了所有提议,但仍然不起作用,任何帮助,在此先感谢这里是代码的一部分:
jsf - 如何使用 af:commandMenuItem 从 JSF 支持 bean 提供文件下载?
这是以下问题的精确副本: How to provide a file download from a JSF backing bean?
除了我试图使用不同的面孔之外,所描述的方法也不起作用。
注意:我不能使用
使用时 - 文件下载正常。
我正在尝试使用并且页面刚刚刷新,我不知道它是否为请求启用了ajax,但答案中描述的方法不起作用。
这是我的对象代码:
如果我将内容长度设置为文件大小,我也会收到以下错误,如果我没有设置响应大小,则不会发生这种情况:
请求被触发:
pageFlowScope.InkassPorReportBean.dlw:是执行文件下载过程的支持bean中的动作侦听器方法,如另一个问题的答案所示。
java - 空支持 bean EJB 不可见
我正在使用 EJB 3.1 和 JSF 2.0 在 Java EE 6 中测试一个小应用程序。
问题是,当我在 JSF 中使用 EL 表达式调用 Backing bean 并运行应用程序时,我得到了异常,因为这个 backing bean 不可访问并且为空。
这是我的 JSF 代码:
这是我的无状态 EJB:
最后是backing bean:
项目结构是用 Intellij IDEA 制作的。
提前致谢