我在ContactController
类文件
public ModelAndView listContacts() {
return new ModelAndView("contact", "contact", contactService.listContact());
}
我在JSP中迭代这个列表:
<c:if test="${!empty contact}">
<table class="data">
<tr>
<th>Name</th>
<th>Email</th>
<th>Telephone</th>
<th> </th>
</tr>
<c:forEach items="${contact}" var="contact">
<tr>
<td>${contact.lastName}, ${contact.firstName}</td>
<td>${contact.email}</td>
<td>${contact.telephone}</td>
<td><a href="delete/${contact.id}">delete</a></td>
</tr>
</c:forEach>
</table>
但我收到以下错误:
org.springframework.beans.NotReadablePropertyException:bean类的无效属性“firstName”[java.util.ArrayList]:Bean属性“firstName”不可读或具有无效的getter方法:getter的返回类型是否匹配setter的参数类型?
答案 0 :(得分:0)
看起来你喜欢让自己的生活变得困难:-)为什么你为不同的东西使用相同的名字。您有一个联系人列表,此列表应命名为contacts
(复数形式:它是一个severa联系人列表),而不是contact
。然后在循环中,每个单独的联系人都可以命名为contact
(单数形式:它是单个联系人实例):
return new ModelAndView("contact", "contacts", contactService.listContact());
<c:forEach items="${contacts}" var="contact">
<tr>
<td>${contact.lastName}, ${contact.firstName}</td>
<td>${contact.email}</td>
<td>${contact.telephone}</td>
<td><a href="delete/${contact.id}">delete</a></td>
</tr>
</c:forEach>