2009-06-23 6 views
1

J'ai ce code:<rich: ajaxValidator> Comment soumettre des données après validation?

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

Je veux que si la validation des données a été avec succès de « entrée » a été stockée dans mon grain de support. Et tout cela doit être sur "onblur" événement.

Et j'utilise Hibernate Validator dans mon backing bean:

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

Répondre

0

Vous utilisez la mauvaise approche alors. Dans les documents Richfaces: AjaxValidator "Ignore tous les traitements JSF sauf la validation."

Vous devez utiliser <a4j:support> à la place

par exemple.

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

La validation sera toujours en cours mais si elle est réussie, les valeurs de votre Bean seront mises à jour.

+0

Etrange mais si je vous utilise approche, la validation n'a pas fonctionné. – aindl

+0

Avez-vous saisi une valeur? Si vous n'avez aucune valeur, le @NotNull ne sera appliqué que si vous avez besoin de "true" sur votre composant UI (inputText). – Damo

Questions connexes