Bonjour,
Je chercher à créer dynamiquement un formulaire (composé de cases à cocher). J'ai cherché un peu partout sur le net et, apparemment, il faut procéder au moyen d'une boucle et d'un indexage :
Je ne souhaite pas utiliser le tag logic:iterate car il nécessite, si j'ai bien compris, d'encapsuler la collection au sein d'un POJO supplémentaire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <html:form action="/traitement" method="post"> <c:forEach var="element" items="${elements}"> <html:checkbox property="eleves" indexed="true"> </c:forEach> </html:form>
Ceci me génère le code html suivant :
Toutefois, pour la récupération des données, je ne trouve d'informations que concernant les ActionForm. Je souhaite utiliser une classe héritant de DynaActionForm.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <input type="checkbox" name="org.apache.struts.taglib.html.BEAN[0].eleves" value="on" /> <input type="checkbox" name="org.apache.struts.taglib.html.BEAN[1].eleves" value="on" /> ...
Je ne sais pas comment le déclarer dans le struts-config et pour l'instant je me suis contenté de ceci :
Dans la classe Formulaire, j'accède, à priori, à une propriété "élèves" de type ArrayList (par d'erreur sur le transtypage). Toutefois, celle-ci est vide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <form-bean name="Formulaire" type="pack.Formulaire"> <form-property name="eleves" type="java.util.ArrayList" /> </form-bean>
J'ai cherché sur google, mais tout ce que j'ai lu ne m'a donné qu'une information partielle (soit la partie jsp, soit la partie struts-config, soit la partie bean) mais pas la marche à suivre permettant de créer un formulaire dynamique avec DynaActionForm. Quelqu'un la connaîtrait-elle ? (question de pure forme puisque je penses que oui ^^).
Merci.
Partager