У меня есть форма JSF 2.2, которая содержит один <h:selectOneMenu>
, входы и 4 кнопки для вызова методов CRUD. Чтобы добиться привязки, я использовал valueChangeListener
, поэтому, когда я выбирал id
из <h:selectOneMenu>
, я вызывал метод, который обновляет объект, связанный с входными данными. Проблема в том, что входные данные не меняют своего значения.
Форма
<h:selectOneMenu value="#{avocatBurController.numProf}"
valueChangeListener="#{avocatBurController.handelValueCahnge}" onchange="submit()">
<f:selectItems value="#{avocatBurController.lstAvocatbureau}" var="avcBur"
itemValue="#{avcBur.avocat.numProf}" itemLabel="#{avcBur.avocat.nom}" />
</h:selectOneMenu>
<h:inputText value="#{avocatBurController.avc.prenom}" />
<h:inputText value="#{avocatBurController.avc.nom}" />
...
Управляемый компонент
public void handelValueCahnge(ValueChangeEvent event) {
String numProf = (String) event.getNewValue();
AvocatBurDao avcBurDao = new AvocatBurDao();
avcBur = avcBurDao.getAvocatBur(numProf);
avc = avcBur.getAvocat();
System.out.println(avc.getNom());
}
avc.getNom()
содержит значение, а входные данные — нет.