2009-09-09 9 views
1

J'essaie de valider un champ en fonction de la valeur d'un autre champ.Accès à la valeur d'un calendrier Richfaces pendant la validation

<h:form id="item"> 
    <s:validateAll/> 
    <h:selectBooleanCheckbox id="selected" value="#{bean.selected}" validator="selectedValidator"/> 
    <rich:calendar id="startDate" value="#{bean.startDate}"/> 
</h:form> 

Cependant, dans mon validateur.

public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException { 
    UIInput startComp = (UIInput) context.getViewRoot().findComponent("item:startDate"); 
    if(value != null && value) { 
    // Check value of startComp and throw exception if null or empty. 
    } 
} 

Le composant startComp résout, mais n'a aucune valeur. Où est la valeur qui apparaît dans la zone de texte du composant de calendrier richfaces?

Répondre

2

essayez ceci:

+0

Cela fait tellement longtemps que je l'ai posté, je l'ai résolu sans utiliser un validateur (un peu un hack, je sais). Je vais essayer cela la prochaine fois que j'aurai raison, et si cela fonctionne, vous obtiendrez un crédit et un upvote. Je n'ai pas oublié! –

0

S'il vous plaît vérifier la valeur de startDate dans votre haricot qui vous utilisé dans la balise ici.

+0

il est nul, parce qu'il n'a pas encore été fixée. Seam/jsf est sur son chemin quand le validateur décroche. –

Questions connexes