问题标签 [managed-bean]
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 - 如何以编程方式设置 -Dorg.apache.el.parser.COERCE_TO_ZERO=false
这个问题类似于:
但我对解决方案并不完全满意。上下文是相同的:我有一个需要整数值的 Web 表单。如果文本框为空,我希望我的 Integer 字段为“null”,但 EL Parser 会自动将我的 id 字段设置为“0”。
我可以通过在本地 Tomcat VM 中设置 JVM 参数来解决此问题:
-Dorg.apache.el.parser.COERCE_TO_ZERO=false
但是,这不适用于我们客户的机器。是否可以“代码内”设置/更改此 JVM 参数。
更新:我发现有人要求这样做,但如果其他人有任何其他解决方法,我也想听听。
https://issues.apache.org/bugzilla/show_bug.cgi?id=48813
更新 2:我无法将值从“0”更改回“空”,因为我的应用程序应将“0”视为实际 ID。所以我需要在运行时知道 id 文本框是否为空。
java - 自定义组件和对支持 bean 的访问
在 JSF2 中是否可以从自定义组件(在方法 encodeBegin 中)访问 FacesContext 和托管 bean?
谢谢。
java - 对 jsf 2.0 Managed Bean 进行单元测试的最佳方法
对 JSF 2.0 托管 bean 进行单元测试的最有效方法是什么。我从 JBoss 看到了 JSFUnit,但它看起来像是用于测试 facelets 页面中的组件,而不是托管 bean 本身。
我想找到一种方法来有效地对托管 bean 进行单元测试。
有任何想法吗?
jsf - 不能在另一个 @ManagedBean 中 @Inject @ManagedBean
好的,这是我的会话 bean。我总是可以从任何 Servlet 或过滤器中检索 currentUser。那不是问题 问题是fileList 和currentFile。我已经用简单的 int 和 Strings 进行了测试,它的效果相同。如果我从我的视图范围 bean 中设置一个值,我可以从另一个类中获取数据。
这是一个例子。
我的视图范围 bean。这就是它的装饰方式。
现在是代码。
我可以完美地看到当前文件名。这实际上是从 jsf 操作方法打印出来的。所以很明显 currentFile 正在被设置。
现在,如果我这样做。
currentUser 显示正常,但我看不到文件。它只是空白。字符串、整数等也会发生同样的事情。
感谢您对此提供的任何帮助。
信息:UserSessionBean:第 3B 行--8531268875812004316.csv(从视图范围 bean 打印的值)
信息:文件过滤器 tester.csv(运行过滤器时打印的值。)
**编辑**
这行得通。
我把它放在 ViewScoped 的构造函数中,一切都很好。现在为什么注入没有按照我的想法进行?起初我想可能是因为我使用的是 JSF 托管 bean 而不是新的 CDI bean。但是我将豆子改成了新的样式(带有命名),效果是一样的。
注入是否只允许您访问 bean 但不能更改它们的属性?
java - 帮助理解 JSF 对托管 bean 的多次调用
我正在使用 h:datatable,这是我的代码的相关行:
然后我有一个请求范围的 managedBean 和最新收入的 getter:
这个 getter 被调用了 8 次,我没有在其他任何地方使用它,只在 dataTable 的值上使用它。为什么会这样?如果您需要更多代码,请询问。但那是我使用该属性的唯一地方。
jsf - JSF 2.0 commandButton 动作被调用了两次
我遇到了 JSF 的问题,希望有人可以帮助我。我有一个带有 SessionScoped 托管 bean 的 Facelets xhtml 页面。当在页面上按下命令按钮时,会在 bean 中调用一个方法,该方法会动态地在页面上创建另一个带有另一个命令按钮的表单。到目前为止效果很好,但是当在页面上按下新创建的按钮时,它会以某种方式调用操作方法两次。以下是来自我的支持 bean 的代码示例:
动态创建新表单并且工作正常的方法:(我使用 setActionExpression 将动作绑定到按钮)
这个方法被调用了两次:
和 xhtml 源代码:
我刚刚开始学习 jsf,所以也许我做错了什么,但如果有人能解释这一点,我将非常感激。
谢谢
java - 使用 ManagedProperty 遇到问题
我试图在几个 SessionScoped bean 之间共享一个对象。我得到了错误,我真的不知道为什么。
我相信这是正确的语法,但是任何类似的调用都会tb.getName
导致异常。
我是否完全误解了 ManagedProperty 的工作原理?
java - JSF bean 实例化:是否仅实例化视图中引用的 bean?
我猜如果我有 6 个 requestscoped bean,那么只有当前视图引用的那些(例如通过使用 #{foo.bar})被实例化。这个假设正确吗?在这种情况下,唯一创建的 bean 将是 foo,而不是 foo2、foo3 等,它们也是 requestscoped 或 viewscoped 等。
CDI 的 @Named 和 jSF 的 @ManagedBean bean 都会发生这种情况吗?
session - 如何在 JSF 2.0 中使会话无效?
在 JSF 2.0 应用程序中使会话无效的最佳方法是什么?我知道 JSF 本身不处理会话。到目前为止我能找到
- 这种方法正确吗?有没有办法不接触 ServletAPI?
- 考虑一个
@SessionScoped
UserBean 处理用户登录-注销的场景。我在同一个bean中有这个方法。reset()
现在,当我在完成必要的数据库更新后调用该方法时,我当前的会话范围 bean 会发生什么?因为即使是 bean 本身也存储在HttpSession
?
javascript - 从托管 bean 调用 JavaScript 函数
有没有办法从 JSF 中的托管 bean 调用(执行)JavaScript 函数?
如果这是相关的,我也在使用 PrimeFaces。