Struts 2 imbrication des itérateurs
Je ne peux pas croire comment quelque chose d'aussi simple peut sembler si difficile à faire dans Struts 2.
C'est environ ce que je voudrais, comme elle l'aurait fait en Java.
for (Parent parent : parents){
for (Child child: parent.getChildren()){
System.out.println(child.getName());
}
}
Qui devrait se traduire par quelque chose de proche de ce dans Stuts tags:
<s:iterator var="parent" value="parents">
<s:iterator var="child" value="parent.children">
<s:property value="child.name"/>
<s:iterator>
<s:iterator>
Je suppose parent.les enfants doit être quelque chose comme ${%(#parent.enfants)} mais je n'ai pas trouvé une bonne combinaison de ${%(# caractères à utiliser :-). Je pourrais aussi utiliser un lien vers une page expliquant quand utiliser l'un de ces.
OriginalL'auteur Bloodboiler | 2010-02-24
Vous devez vous connecter pour publier un commentaire.
Essayez ceci:
Quelqu'un peut m'expliquer la signification du signe#? J'ai fait la même erreur que l'affiche originale. Merci!
Cette page explique: struts.apache.org/2.x/docs/ognl.html
OriginalL'auteur Nate
Ça fonctionne pour moi:
OriginalL'auteur Trick
C'est la façon dont le code JSP va ressembler:
Suivant est le haricot(XBean) dont la Liste est utilisée dans la page JSP:
Maintenant, vous pouvez tout simplement avoir un champ lstBean avec les poseurs dans votre soumission d'action (saveaction) et hey, vous êtes fait.
OriginalL'auteur coding_idiot
Pour Struts 2.3.x vous pouvez utiliser cet exemple, extrait de http://struts.apache.org/release/2.3.x/docs/iterator-tag-examples.html
Dans cet exemple, 'pays' est une liste de pays des objets, dont chacune a un nom et une liste de villes. Chaque ville a un nom.
Ils se réfèrent à une position spécifique sur la pile: ğ[1]'. Le haut de la pile, la position 0, contient de la ville, poussé par l'itérateur interne; la position 1 contient le pays, poussée par l'extérieur itérateur.
OriginalL'auteur user1522193