‹rich:ajaxValidator› Как отправлять данные после проверки?

У меня есть такой код:

<h:inputText id="input" value="#{bean.input}">
                           <f:convertNumber />
                           <rich:ajaxValidator event="onblur" />
</h:inputText>

Я хочу, чтобы в случае успешной проверки данные из «ввода» сохранялись в моем вспомогательном компоненте. И все это должно быть на событии "onblur".

И я использую Hibernate Validator в своем вспомогательном компоненте:

@Min(value = 1)
@NotNull(message="{number.not_null}")
public long getInput() {
    return input;
}

person Community    schedule 23.06.2009    source источник


Ответы (1)


Тогда вы используете неправильный подход.

Из документов Richfaces: AjaxValidator «Пропускает всю обработку JSF, кроме проверки».

Вместо этого вы должны использовать <a4j:support>

eg.

<h:inputText id="input" value="#{bean.input}">
  <f:convertNumber />
  <a4j:support event="onblur" ajaxSingle="true" />
</h:inputText>

Проверка по-прежнему будет срабатывать, но если она будет успешной, значения вашего компонента будут обновлены.

person Damo    schedule 23.06.2009
comment
Вы ввели значение? Если у вас нет установленного значения, @NotNull будет применяться только в том случае, если у вас есть required=true в вашем компоненте пользовательского интерфейса (inputText). - person Damo; 24.06.2009