java - 在 UIInput 组件中使用带参数的方法时如何调用 setter 方法?

标签 java jsf-2 el mojarra

例如,在我使用带有参数的方法来获取 JSF 页面上组件的值之前

<h:dataTable value="#{myBean.getMyList(argument)}">

但是现在我需要相同的原理,但是在 inputText 元素的 value 属性上使用它,所以它或多或少像这样:

<h:inputText value="#{myBean.getMyValue(argment)}">

问题是,当从 f:ajax 元素执行元素时,第二个方法不会调用 setter 方法。

将值传递给 backingBean 上的 setter 和 getter 方法的另一种方法是什么?

非常感谢。

最佳答案

确实不可能在不代表 getter 的 EL 表达式上设置值。您需要转myValue进入Map<String, Object>并使用以下符号。

<h:inputText value="#{myBean.myValue[argument]}">

然后这将调用put() Map上的方法。请注意,您不需要 myValue 的 setter 在这里。

关于java - 在 UIInput 组件中使用带参数的方法时如何调用 setter 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10438329/

相关文章:

java - 在其他布局的 LinearLayout 中扩充布局

java - 如何优化缓慢的 Mysql SELECT 查询?

ajax - Primefaces ajax 更新

spring - JSF,如何启动一个单独的线程来处理pdf生成并直接渲染 View

spring - EL 自动完成/代码协助 Eclipse 和 Spring Beans

java - 对于 JSF 2.0,如何在 Tomcat 6 上启用 EL 2.2

java - 空指针异常 : Overriding constructor calling method of Base class in Derived class

jsf-2 - 我可以在 primefaces 自动完成组件中使用 omnifaces 通用转换器吗?

jsf - 如何传递整数常量

java - 在 Spring 应用程序中使用 application.properties