Переданные значения формы не обновляются в модели при добавлении <f: ajax> в <h: commandButton>
Я учусь использовать ajax в jsf, я создал страницу, которая фактически ничего не делает, вводит текст, который заполнен числом, отправляется на сервер, вызывает метод установки для этого элемента с отправленным значением и отображает получатель стоимость.
Вот простой код бина:
@ManagedBean(name="helper",eager=true)
public class HealthPlanHelper {
String random = "1";
public void setRandomize(String s){
random = s;
System.out.println("Calling setter");
}
public String getRandomize(){
return random;
}
}
И страница JSF:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head></h:head>
<h:body>
<h:form>
<h:commandButton action="nothing">
<f:ajax render="num"/>
</h:commandButton>
<h:inputText value="#{helper.randomize}" id="num"/>
</h:form>
</h:body>
</html>
Как вы видите, это bean-объект в области запросов, когда я нажимаю кнопку, сервер показывает, что он создает экземпляр bean-компонента, но метод setter никогда не вызывается, таким образом, метод получения всегда возвращает «1» в качестве значения строка.
При удалении сеттер вызывается нормально.