JSF : Deux SelectOneMenu dépendant + a4j:support = problème de validation
Bonjour à tous (et dsl pour le double post),
je me tourne vers vous pour un problème de validation de formulaire.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
<h:form id="addContact_Form">
<div class="zoneEditor">
<h3>Selection de l entreprise</h3>
<h:panelGrid columns="3">
<h:outputText value=" Selectionnez l'entreprise : "/>
<h:selectOneMenu id="myCompany" value="#{commonDataMB.form_Company}" converter="companyConv" required="true" requiredMessage="Sélectionner une entreprise" style="width: 100%">
<f:selectItem itemLabel="" itemValue="#{null}" />
<f:selectItems value="#{contactMB.companyLstItems}"/>
<a4j:support event="onchange" reRender="mySite" ajaxSingle="true"/>
</h:selectOneMenu>
<rich:message for="myCompany" style="color:red"/>
</h:panelGrid>
</div>
<!-- Select Site -->
<div class="zoneEditor">
<h3>Selection du site</h3>
<h:panelGrid columns="3">
<h:outputText value=" Selectionnez le site : "/>
<h:selectOneMenu id="mySite" value="#{commonDataMB.form_Site}" converter="siteConv" required="true" requiredMessage="Sélectionner un site" style="width: 100%" immediate="true">
<f:selectItem itemLabel="" itemValue="#{null}" />
<f:selectItems value="#{contactMB.siteLstItems}"/>
</h:selectOneMenu>
<rich:message for="mySite" style="color:red"/>
</h:panelGrid>
</div>
<!-- Suite du formulaire -->
</h:form> |
Le comportement du formulaire est : je sélectionne un élément dans le premier menu déroulant, le second se met à jour. Cette partie fonctionne parfaitement.
C'est la validation du formulaire qui ne fonctionne pas.
En gros, sans le a4j:support (et en modifiant la méthode siteLstItems [qui renvoi, dans ce cas une liste pleine sans traitement]), le comportement du formulaire est tout à fait normal : la validation est bonne.
Dès l'ajout du a4j:support, la validation n'est plus bonne et l'erreur renvoyée est : addContact_Form:mySite: Erreur de validation: Valeur not valid.
J'ai fait des tests dans tous les sens et je ne comprends pas en quoi l'ajout du a4j:support empêche la validation ?
Merci d'avance pour vos réponses !!