Spring MVC表单标记库对嵌套对象的支持

Spring MVC表单标记库对嵌套对象的支持,spring,forms,jsp,spring-mvc,taglib,Spring,Forms,Jsp,Spring Mvc,Taglib,我的身体看起来像这样 public class UserDTO { private String Name; // other fields private List<Address> addresses; // other fields } 公共类UserDTO{ 私有字符串名称; //其他领域 私人名单地址; //其他领域 } 我可以从JSP绑定地址字段,如下所示: <select multiple="multiple" name

我的身体看起来像这样

public class UserDTO {
    private String Name;
    // other fields

    private List<Address> addresses;

    // other fields

}
公共类UserDTO{
私有字符串名称;
//其他领域
私人名单地址;
//其他领域
}
我可以从JSP绑定地址字段,如下所示:

<select multiple="multiple"  name="addresses.line1" ></select>

但是我想在JSP中使用spring表单标记库。路径的等价物是什么?不支持path=“addresses.line1”。

您可以使用:

public class UserDTO {
    private String Name;
    private List<Address> addresses;
    // other fields
}
UserDTO user = new ...
model.addAttribute("userDTO", user);
公共类UserDTO{
私有字符串名称;
私人名单地址;
//其他领域
}
UserDTO user=new。。。
model.addAttribute(“userDTO”,user);
在jsp中:

//import taglib

<form:form action="/myaction" ...>
  <form:select id="address" name="address" path="Address">
    <c:forEach items="${userDTO.addresses}" var="addresses">
        <form:option value="${addresses.XXX}" label="${addresses.YYYY}"/>
    </c:forEach>
//导入标记库
您是否在顶部的jsp页面中导入了
?请尝试使用
path=“addresses[0].line1
。为其添加一些索引值。也许您可以通过jstl生成它。