我认为这对很多人来说很容易,但我不知道我做错了什么。
我的控制器:
@RequestMapping(value = "/novo", method = RequestMethod.GET)
public ModelAndView novoTimeSheet() {
Usuario usuario1 = new Usuario(1L,"Leandro1","ltsiciliano1@gmail.com");
Usuario usuario2 = new Usuario(2L,"Leandro2","ltsiciliano2@gmail.com");
Usuario usuario3 = new Usuario(3L,"Leandro3","ltsiciliano3@gmail.com");
List<Usuario> usuarioList = new ArrayList<Usuario>();
usuarioList.add(usuario1);
usuarioList.add(usuario2);
usuarioList.add(usuario3);
Map<String, Object> model = new HashMap<String, Object>();
model.put("usuarios", usuarioList);
return new ModelAndView("timesheetcrud/novo", "timesheetcruddto", model);
}
它正在工作:
<td>Usuário :</td>
<td>
<select id="usuarios" name="usuarios">
<c:forEach items="${timesheetcruddto.usuarios}" var="usuario">
<option value="${usuario.id}"><c:out value="${usuario.nome}"/></option>
</c:forEach>
</select>
</td>
但我想使用弹簧标签,我把这个:
<td>Usuário :</td>
<td>
<td>
<form:select id="id_usuario" path="usuarios">
<form:option value="0" label="--- Select ---" />
<form:options items="${usuarioList}"/>
</form:select>
</td>
</td>
这是行不通的:
<td>
<form:select id="id_usuario" path="usuarios">
<form:option value="0" label="--- Select ---" />
<form:options items="${usuarios}"/>
</form:select>
</td>
这是错误的:
org.springframework.beans.NotReadablePropertyException: Invalid property 'usuarios' of bean class [java.util.HashMap]: Bean property 'usuarios' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter?
我想知道使用 spring 标签而不是 JSTL 有什么好处。
谢谢