Я использую Spring Webflow 2.4.0.M1 с Mojara JSF 2.1.21.h: selectOneMenu with Пожалуйста, выберите предыдущий выбор при ошибке проверки
У меня есть очень простой час: selectOneMenu так:
<h:selectOneMenu id="title" value="#{person.title}" required="true" requiredMessage="Required title">
<f:selectItem noSelectionOption="true" itemLabel="Please Select" itemValue="" />
<f:selectItem itemLabel="Mr" itemValue="MR" />
<f:selectItem itemLabel="Mrs" itemValue="MRS" />
</h:selectOneMenu>
<p:message for="title"/>
После заполнения формы со значением слева на Пожалуйста, выберите, я получаю появится требуемое сообщение. Если я затем выберем опцию «Мистер», а затем снова отправлю, но с другими полями на странице, имеющими ошибки, страница перезагрузится, и требуемое сообщение для заголовка исчезнет, и Mr выбран, как и ожидалось. Если я затем верну его обратно в «Пожалуйста, выберите и отправьте снова», я снова получу нужное сообщение, но выбранная опция вернулась к «Мистеру» вместо «Пожалуйста, выберите». Элемент # {person.title} EL является привязкой к String, по умолчанию используется пустая строка. До сих пор это только кажется проблемой для selectOneMenu, так как делает то же самое на h: inputText работает правильно.
Любые идеи? Также попробовали с webflow 2.3.2.RELEASE и с той же проблемой.
Похоже, что это та же проблема: https://java.net/jira/browse/JAVASERVERFACES-932, которая составляет около 4 лет и имеет фиксированное разрешение. Это определенно не исправлено. Я попробую расширить MenuRenderer и переопределить метод renderOption предложением, упомянутым в конце проблемы Jira.