Используя JSF 2.0, Glassfish 3.2, Primefaces 2.2.1
У меня есть страница с несколькими составными компонентами.В одном из этих компонентов у меня есть h: selectOneMenu.Я пытаюсь добавить f: ajax для вызова метода при выборе нового значения.
Вот как выглядит компонент h: selectOneMenu на странице:
<h:selectOneMenu id="selectRmDD" styleClass="editSelectRmDD" value="#{scheduleEditSessionBean.selectedRoom}" >
<f:selectItems id="roomList" value="#{scheduleEditSessionBean.roomList}"/>
<f:ajax listener="#{scheduleEditSessionBean.selectRmDD_processValueChange}" event="valueChange" render="@form" />
</h:selectOneMenu>
Когда явыберите новый элемент из h: selectOneMenu, вызывается функция слушателя, но значение в selectedRoom равно нулю.Я также рассмотрел это в отладчике, и даже значение submitValue для компонента в AjaxBehaviorEvent также является нулевым.Вот метод, который вызывается при выборе нового значения и определение selectedRoom:
public void selectRmDD_processValueChange( AjaxBehaviorEvent ae) {
String s = getSelectedRoom();
System.out.println( "Selected room = "+s );
if( s != null )applyRoomBtn_action();
}
private String selectedRoom = "1";
public String getSelectedRoom() { return this.selectedRoom; }
public void setSelectedRoom(String s) { this.selectedRoom = s; }
Есть идеи, почему значение не заполняется?
Спасибо.