У меня есть следующий раскрывающийся список, в котором перечислены несколько автомобилей, он у меня есть так, что он сохраняет значение выбранного элемента в переменной backbean, и событие запускается, чтобы другие раскрывающиеся списки заполнялись в соответствии с выбранным значением этого выпадающего элемента управления, как показано ниже:
<Td>
<h:selectOneMenu id="combocarList"
value="#{customerBean.selectedcar}"
styleClass="comboStyle"
valueChangeListener="#{customerBean.loadothercombos}"
onchange="document.forms[0].submit()"
>
<f:selectItem
itemLabel="-----------Select--------------"
itemValue="None" />
<f:selectItems value="#{customerBean.carsList}" />
</h:selectOneMenu>
</Td>
Проблема заключается в том, что когда элемент, выбранный из раскрывающегося списка выше, событие loadothercombos вызывается перед установщиком, что вызывает проблемы.
Обратите внимание, что клиент backbean определяется как:
<managed-bean-name>customerBean</managed-bean-name>
<managed-bean-class>com.theway.customer</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
Поведение, которое я вижу при отладке, когда я выбираю элемент из раскрывающегося списка:
1) Getter is called for selectedcar
2) Loadothercombos is called <------- This is called by the event
3) Setter is called for selectedcar
Я не могу заставить его вызывать сеттер перед вызовом loadothercombos. Любое понимание будет оценено. Спасибо