Comment parcourez-vous une liste d'objets?
J'ai une classe User qui a une Chaîne de nom d'utilisateur. J'ai une liste d'utilisateurs que j'essaie de l'afficher dans un tableau à l'aide de
<s:iterator value="users" id="list">
<tr>
<td><s:property value="#list.username" /></td>
<td></td>
<td></td>
<td></td>
</tr>
</s:iterator>
Les lignes sont affichés à droite le nombre de fois, il est donc d'une itération dans ma liste correctement. Cependant, je ne sais pas comment accéder à la propriété username pour l'afficher. De toute évidence ce que j'ai ci-dessus n'est pas correct... des idées?
source d'informationauteur Kevin
Vous devez vous connecter pour publier un commentaire.
Tout d'abord, dans Struts2 2.1.x le
id
attribut est obsolète,var
devrait être utilisé à la place (ref)je pense que le # est mal utilisé.en Outre, "liste" semble une mauvaise réputation pour ce qui est attribué à chaque itération... je pense que "l'utilisateur" est plus approprié.IIRC, la syntaxe est
De plus, vous n'avez pas besoin d'attribuer à l'élément actif dans l'itérateur pour un cas simple. Cela devrait aussi fonctionner:
Aussi, vous voudrez peut-être essayer ceci:
Mise à JOUR: j'ai corrigé les bits sur le #, c'était ok.
Vous pouvez le faire comme ceci
Observer que pas besoin de #liste.
L'autre façon est
insetead de id donner comme var.Depuis
nous n'avons pas spécifier un champ d'application pour le var, cette nouvelle utilisateur référence existe dans
la valeur par défaut “action” champ d'application—la ActionContext. Comme vous pouvez le
voir, nous avons ensuite référence avec le n ° de l'opérateur.
Vous pouvez utiliser JSTL avec Struts. Il a un
<c:forEach>
balise dans sa bibliothèque de base qui vous permettra de parcourir une liste ou de toute autre collection facilement.Struts 1.x prend soin de votre intérieur des propriétés de ce type.
< logic:iterate id="utilisateur" name="userList">
< bean:write property="${userName}"/>
< /logic:iterate>
Je suppose que par ur exemple u peut l'avoir. Vous ne pouvez pas besoin "#liste de." de nouveau dans la valeur de l'attribut
< s:iterator value="utilisateurs" id="liste">
< s:property value="pseudo" />
< /s:iterator>
Vérifier cette pour d'autres exemples tels