У меня есть Пользовательский класс, который имеет Строковое имя пользователя в нем. У меня есть список пользователей, которых я пытаюсь отобразить в использовании таблицы
<s:iterator value="users" id="list">
<tr>
<td><s:property value="#list.username" /></td>
<td></td>
<td></td>
<td></td>
</tr>
</s:iterator>
Строки отображаются правильное количество раз, таким образом, оно выполняет итерации через мой список правильно. Однако я не знаю, как получить доступ к свойству имени пользователя для отображения его. Очевидно, то, что я имею выше, не корректно... Какие-либо идеи?
Struts 1.x таким образом заботится о ваших внутренних свойствах.
Я полагаю, согласно твоему примеру, ты можешь иметь. Вам может не понадобиться "#list". снова в атрибуте value
Вы можете использовать JSTL со Struts. В его основной библиотеке есть тег
, который позволит вам легко перебирать список или любую другую коллекцию.
Во-первых, в Struts2 2.1.x атрибут id
устарел, вместо него следует использовать var
(ref)
Я думаю, что # злоупотребляли там. Кроме того, "список" кажется плохим названием для того, что должно быть назначено в каждой итерации... Я думаю, что "пользователь" более подходит.
IIRC, синтаксис
<s:iterator value="users" var="user">
... <s:property value="#user.username" />
</s:iterator>
Кроме того, вам не нужно назначать текущий элемент в итераторе для такого простого случая. ЭТО тоже должно работать:
<s:iterator value="users">
... <s:property value="username" />
</s:iterator>
Также вы можете попробовать это:
<s:iterator value="users">
... <s:property /> <!-- this outputs the full object, may be useful for debugging -->
</s:iterator>
ОБНОВЛЕНИЕ: я немного поправил #, все в порядке.