У меня есть поле ввода на странице JSF, как показано ниже (отображается на BigDecimal на базовом компоненте)
<h:inputText disabled="#{volumeBean.grossVolumeDisabled}" id="grossVolume" size="10" validateOnExit="true" value="#{volumeBean.enteredGrossVolume}" >
<a4j:support ajaxSingle="true" event="onblur" ignoreDupResponses="true" oncomplete="checkFieldValidation(this)" onsubmit="updateDirty()"/>
</h:inputText>
И a4j: commandButton для "обновления" всех данных из базы данных на странице:
<a4j:commandButton accesskey="T" action="#{volumeBean.revert}" button-type="ajax" disabled="#{volumeBean.revertDisabled}" id="volumeBean_reset" immediate="true" reRender="volumesTable" value="#{msg.button_RESET}"/>
Вот шаги по воспроизведению моей проблемы: И, пожалуйста, обратите внимание, что ошибка возникает независимо от того, установлен ли атрибут aRj на a4j: support
Вот шагиВоспроизвести - просто чтобы уточнить:
- перейти к экрану, где существует поле ввода BigDecimal
- введите aa в поле (должно быть числом, но намеренно ставить нечисловые символы)
- вкладка за пределами поля
- обратите внимание, что сообщение об ошибке 'aa' не является допустимым netVolume
- нажмите кнопку RESET
- всеизмененные поля имеют свои исходные значения, КРОМЕ тех, в которые введены нечисловые данные
- , если только пользователь вручную не удалит нечисловые данные в полях или не обновит весь экран, "bрекламные данные "палочки