直接上代码:
@RequestMapping(value="reg")
public ModelAndView reg(@Valid RegisterUserModel model,BindingResult result){
String msg = null;
if(result.hasErrors()){
msg ="jsr303测试";
List errorList = result.getAllErrors();
for(ObjectError error : errorList){
System.out.println(error.getDefaultMessage());
}
}
ModelAndView mv = new ModelAndView();
if(null==msg||"".equals(msg)){
mv.setViewName("redirect:sysManager/login");//登录成功
}else{
mv.setViewName("regPage");//登录失败
mv.addObject("msg",msg);
}
mv.addObject("model",model);
mv.addObject(result);
return mv;
}
==================
System.out.println(error.getDefaultMessage()); 错误信息可以打印出来
================
jsp页面代码:
<form action="./reg.htmls" method="post">
error:<form:errors path="*" cssClass="error"></form:errors><br/>
<label style="color:red;">${msg }</label><br/>
用户名:
<input type="text" name="userName" />
<br />
密码:
<input type="password" name="password" />
<br />
确认密码:
<input type="password" name="rePassword" />
<br />
验证码:
<input type="text" name="code" size="10"/>
<img title="点击更换" onclick="javascript:refresh(this);" src="${pageContext.request.contextPath}/randomValidateCode.htmls">
${verificationCodeError }<br/>
<input type="submit" value="快速注册" />
</form>
错误信息显示不出来:
<form:errors path="*" cssClass="error"></form:errors>
求大神协助,不胜感激!
另外提问 jsr303必须用 form:form 标签才起作用吗?