Problème pour la mise à jour et la validation de plusieurs champs situés dans une itération <a4j:repeat>
Bonjour,
Je rencontre actuellement un souci avec JSF pour effectuer un process de plusieurs champs suite à un <a4j:support> situé dans un <a4j:repeat>. Le problème que j'ai est je n'arrive qu'à effectuer la validation et la mise à jour du champ sur lequel est rattaché le <a4j:support>.
Voici le code que j'essaie de mettre en place :
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
|
<a4j:repeat var="element" value="#{bean.elements}">
<h:inputText id="montant" styleClass="numerique"
value="#{element.montant}"
converter="montantConverter"
converterMessage="#{messages['erreur.format']}">
<a4j:support ajaxSingle="true" event="onchange" reRender="table-garantie-rc, tarif, offresProcessCommand" process="montant,montant2,montant3" />
</h:inputText>
<h:message for="montant" styleClass="msg-erreur"/>
<h:inputText id="montant2" styleClass="numerique"
value="#{element.montant2}"
converter="montantConverter"
converterMessage="#{messages['erreur.format']}">
<a4j:support ajaxSingle="true" event="onchange" reRender="table-garantie-rc, tarif, offresProcessCommand" process="montant,montant2,montant3" />
</h:inputText>
<h:message for="montant2" styleClass="msg-erreur"/>
<h:inputText id="montant3" styleClass="numerique"
value="#{element.montant3}"
converter="montantConverter"
converterMessage="#{messages['erreur.format']}">
<a4j:support ajaxSingle="true" event="onchange" reRender="table-garantie-rc, tarif, offresProcessCommand" process="montant,montant2,montant3" />
</h:inputText>
<h:message for="montant3" styleClass="msg-erreur"/>
</a4j:repeat> |
Ce que je voudrais c'est pouvoir conserver chacun des messages d'erreur des converters de chaque champ lors des différents appels aux <a4j:support>. Or avec ce code, seul le champ modifié est traité par mon converter et donc je perds les messages d'erreur obtenus au préalable.
Avez-vous déjà rencontré ce cas où auriez-vous des idées pour me débloquer?
Merci pour votre aide!