使用<logic:iterate>与Struts 1.x </logic:iterate>

时间:2013-08-30 15:43:11

标签: jsp struts-1

我是Struts 1.x的新手。我需要使用List<List<VO>>

在JSP中迭代<logic: iterate>

List<List<VO>> - 在表单

中定义 从那以后我就可以得到和外面的名单。现在使用id,我得到内部列表。我的List<Vo>用于填充组合框。

如何从<logic:iterate>获取VO的属性?

1 个答案:

答案 0 :(得分:6)

自从我使用Struts 1.x已经有一段时间了,但是IIRC你应该能够从<logic:iterate>内部访问VO。

假设您的行动中有这样的内容(PersonForm是VO,并且它包含电子邮件地址列表):

List<EmailAddress> emailAddresses = new ArrayList<EmailAddress>();
emailAddresses.add(new EmailAddress("bob@bob.com"));
emailAddresses.add(new EmailAddress("bob@somewhere-else.com"));

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>

那应该打印出类似的东西:

  • 罗伯特
  • bob@bob.com
  • 罗伯特
  • bob@somewhere-else.com