0
我在春天samples.I工作有一個名爲UserController2控制器類如下有人可以解釋控制器類的工作
@Controller
public class UserController2 extends MultiActionController {
private UserDAO userDAO;
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
@RequestMapping(params = "add", method = RequestMethod.POST)
public ModelAndView add(HttpServletRequest request,
HttpServletResponse response, User user) throws Exception {
userDAO.saveUser(user);
return new ModelAndView("redirect:User.htm");
}
public ModelAndView list(HttpServletRequest request,
HttpServletResponse response) throws Exception {
ModelMap modelMap = new ModelMap();
modelMap.addAttribute("userList", userDAO.listUser());
modelMap.addAttribute("User", new User());
return new ModelAndView("userForm", modelMap);
}
}
,我有叫userForm.jsp
<form:form method="POST" action="add.htm" commandName="User" modelAttribute="User">
<table>
<tr>
<td><form:label path="name">Name</form:label></td>
<td><form:input path="name" /></td>
</tr>
<tr>
<td><form:label path="id">id</form:label></td>
<td><form:input path="id" /></td>
</tr>
<tr>
<td><form:label path="password">Name</form:label></td>
<td><form:input path="password" /></td>
</tr>
<tr>
<td><form:label path="gender">Name</form:label></td>
<td><form:input path="gender" /></td>
</tr>
<tr>
<td><form:label path="gender">Name</form:label></td>
<td><form:input path="gender" /></td>
</tr>
<tr>
<td><form:label path="country">Name</form:label></td>
<td><form:input path="country" /></td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="Submit"/>
</td>
</tr>
</table>
</form:form>
一個jsp頁面
究竟做下面的代碼返回
return new ModelAndView("userForm", modelMap);
和
return new ModelAndView("redirect:User.htm");
我收到以下錯誤
java.lang.IllegalStateException: Neither BindingResult nor plain target object for
bean name 'User' available as request attribute
我搜查,但我找不到的ModelAndView好好解釋..
命令名是'User',添加到modelMap的新用戶名爲'user'。案件事宜。 – 2013-04-10 12:56:55
即使更改後它仍然顯示相同的錯誤 – Ezhil 2013-04-10 13:02:26
您是否還在'modelAttribute =「User」'中修復了大小寫? – 2013-04-10 13:06:12