Bind the component as UIInput
to the view and use UIInput#getValue()
to pass its value as method argument.
<h:inputText binding="#{input1}" />
<h:commandButton value="Test" action="#{myBean.execute(input1.value)}" />
with
public void execute(String value) {
// ...
}
Note that the value is this way already converted and validated the usual JSF way.
See also:
- How does the ‘binding’ attribute work in JSF? When and how should it be used?
- JSF component binding without bean property