Salut;
Dans mon application je doit gérer des événements qui sont organisés par une ou plusieurs personnes. Donc pour créer un nouvel événement, j'ai une classe NouvelEvenementForm qui contient un attribut de type Set (organisateurs) avec les bons setters et getters, et j'ai rajouté deux méthodes ajouterOrganisateur et retirerOrganisateur qui permettent de faire ce que leur noms respectifs indiquent .
dans ma JSP j'ai un machin qui ressemble à ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
<nested:iterate id="organisateur" name="NouvelEvenementForm" property="organisateurs">
   <layout:row>
   <layout:field key="identifiant" property="identifiant" name="organisateur" size="16" maxlength="16" isRequired="true" styleClass="LABEL" />
   <layout:field key="mot.de.passe" property="motDePasse" name="organisateur" size="16" maxlength="16" isRequired="true" type="password" styleClass="LABEL" />
   </layout:row>
</nested:iterate>
mais je n'arrive pas à récupérer les valeurs écrite dans les champs . (j'ai aussi essayé avec <nested:texte> et c'est pareil).
pour vérifier l'accès à mes champs, j'ai surchargé la méthode toString qui donne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
@Override
public String toString(){
   String s = new String();
   s+="\nle libellé de l'évenement est : '"+this.libelle+"'\net les organisateurs sont:";
   Iterator it = organisateurs.iterator();
   while(it.hasNext()){
      s+="\n"+((Personne)it.next()).getIdentifiant();
   }
return s;
}
J'appelle cette méthode à la soumission de mon formulaire;
Je rajoute quelques organisateurs histoire de tester, et je reçois ça en sortie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
le libellé de l'évenement est : 'événement'
et les organisateurs sont:
null
null
null
j'ai bien sûr une classe Personne avec un attribut identifiant et un attribut motDePasse
On m'a en effet orienté ver la librairie de tags nested mais je ne comprend pas vraiment comment faire pour régler ce problème.
Merci d'avance pour votre aide