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

Pab*_*blo 2 java el jsf-2 mojarra

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

<h:dataTable value="#{myBean.getMyList(argument)}">
Run Code Online (Sandbox Code Playgroud)

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

<h:inputText value="#{myBean.getMyValue(argment)}">
Run Code Online (Sandbox Code Playgroud)

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

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

多谢。

Bal*_*usC 5

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

<h:inputText value="#{myBean.myValue[argument]}">
Run Code Online (Sandbox Code Playgroud)

然后,这将put()调用Map. 请注意,这里不需要设置器myValue