假设我们有:
车类:
public class Car{
private String model;
private String brand;
private Collection<People> owners;
//constructor,getters and setters
}
班级人:
public class People{
private Car car;
private String name;
private Gender gender;
//constructor,getters and setters
}
班级性别:
public class Gender{
private Char gender;
//constructor,getters and setters
}
然后,如果我想将集合所有者传递给我的视图:
<body>
<h1>Car detail: </h1>
<h2>Owners: </h2>
<table>
<form:form modelAttribute="owners" method="post" action="processOwnersSelection.htm">
<tr>
<td>
<ul>
<form:checkboxes element="li" path="owners" items="${owners}"></form:checkboxes>
</ul>
</td>
</tr>
<tr>
<td>
<button type="submit">Next</button>
</td>
</tr>
</form:form>
</table>
</body>
通过我的控制器:
@RequestMapping(value = "/selectOwners")
protected ModelAndView showOwnersSelection() throws ServiceException{
return new ModelAndView("car/ownerSelection", "owners", super.getService().getAllOwners());
}
笔记。这将用于将多个所有者(存在于数据库中)连接到汽车。
我会收到一个错误:
org.springframework.beans.NotReadablePropertyException:bean 类 [java.util.HashMap$Values] 的无效属性“所有者”:Bean 属性“所有者”不可读或具有无效的 getter 方法:getter 的返回类型是否与设置器的参数类型?
据我了解,Spring 通过使用 PropertyEditor 或 Converter 的实现来转换这些?
所以我应该手动写一个,但是 Spring 怎么知道我做了一个他(或她)必须使用的?一个人应该是什么样子?