У меня есть ситуация, когда существует selectOneMenu, значение которого связано с компонентом поддержки.
Мне нужна кнопка, которая не обновляет значения модели (поэтому она имеет свойство немедленное = "true").
Метод действия этой кнопки изменяет значение, с которым связано selectOneMenu, но при повторном отображении страницы отображается исходное значение (то, которое было отправлено), а не то, которое установлено в методе действия.
Есть идеи, почему это происходит?
Если я не достаточно хорошо объяснил проблему, пожалуйста, дайте мне знать.
<ч />
РЕДАКТИРОВАТЬ:
Как и было запрошено, вот исходный код:
код страницы:
<h:selectOneMenu id="selectedPerson"
binding="#{bindings.selectPersonComponent}"
value="#{bean.selectedPerson}">
<s:selectItems var="op" value="#{bean.allPersons}"
label="#{op.osoba.ime} #{op.osoba.prezime}"
noSelectionLabel="#{messages.selectAPerson}">
</s:selectItems>
<f:converter converterId="unmanagedEntityConverter" />
</h:selectOneMenu>
...
<a4j:commandButton action="#{bean.createNew}" value="#{messages.createNew}"
immediate="true" reRender="panelImovine">
</a4j:commandButton>
код Java:
private Person selectedPerson;
public String createNew() {
log.debug("New created...");
selectedPerson = null;
bindings.getSelectPersonComponent().setSubmittedValue(null); //SOLUTION
return "";
}
Решение в подкладке с пометкой РЕШЕНИЕ :)