在Spring MVC,我有以下控制器:返回从控制器回错误以查看在Spring MVC
@RequestMapping(value="adminUsers", method = RequestMethod.POST)
public ModelAndView listAdminUsers(Person newPerson, HttpServletResponse response) throws Exception {
Person person = personService.findPerson(newPerson.getUsername());
if (person == null) {
// Set errorText = "Invalid Person";
// redisplay view
ModelAndView mav = new ModelAndView("adminUsersList");
return mav;
} else {
Roles roles = new Roles();
roles.setPersonCode(person.getPersonCode());
roles.setRoleType("ADMN");
rolesMapper.insert(roles);
return new ModelAndView("redirect:/admin/adminUsers.html");
}
}
随着视图:
<form:form method="post" action="${action}" commandName="person" >
<form:label path="username">Add new administrator:</form:label>
<form:input path="username" size="20"/>
<form:errors path="username" />
<input type="submit" value="Submit Changes"/> </form:form>
我怎么会返回一个错误回视图,所以它由<form:errors path="username" />
标签显示?
这是类似于How to return error status and validation errors from this Spring MVC controller?除了我返回一个网页,而不是一个REST对象,所以那里的答案不适用。
我不想使用Validator
由于上述调用数据库,它不是简单的,如果用户名不是空等
由于支票!
抛出:'org.springframework.context.NoSuchMessageException:在代码'无效username.person.username'中找不到任何消息。 我的方法是现:'公共的ModelAndView listAdminUsers(人newPerson,BindingResult结果,HttpServletResponse的响应)抛出Exception' 以及拒收线是 'result.rejectValue( “用户名”, “无效的用户名”);' – Mark 2012-08-07 14:41:29
抱歉忽略评论,解决了 – Mark 2012-08-07 14:52:42
对于rejectValue的不正确签名感到抱歉。很高兴听到你解决了它。我已经更新了我的答案。 :) – bvulaj 2012-08-07 15:11:41