我是Struts 1.x的新手。我需要使用List<List<VO>>
在JSP中迭代<logic: iterate>
List<List<VO>>
-在表单中定义
从中我可以获得外层列表。现在使用一个ID,我得到了内部列表。我的List<Vo>
用来填充组合框。
如何从<logic:iterate>
获取VO的属性?
最佳答案
自从我使用Struts 1.x已经有一段时间了,但是IIRC您应该能够从<logic:iterate>
内部访问VO。
假设您在“操作”中有类似的内容(PersonForm
是VO,并且其中包含电子邮件地址列表):
List<EmailAddress> emailAddresses = new ArrayList<EmailAddress>();
emailAddresses.add(new EmailAddress("[email protected]"));
emailAddresses.add(new EmailAddress("[email protected]"));
PersonForm personForm = new PersonForm();
personForm.setFirstName("Robert");
personForm.setEmailAddresses(emailAddresses);
request.setAttribute("myPersonForm", personForm );
然后在您的JSP中执行以下操作:
<logic:iterate name="myPersonForm" property="emailAddresses" id="email">
<li><bean:write name="myPersonForm" property="firstName" /></li>
<li><bean:write name="email" property="address"/></li>
</logic:iterate>
那应该打印出类似以下内容: