Spring MVC 3验证不起作用

Moi*_*ain 2 java validation spring-mvc

我有一个使用jsr-303验证的bean,但BIndingResult没有返回错误.每次返回成功视图

我的豆是

public class User
{

    //@NotNull
    private int userId;   


    @NotNull
    @Size(min=3,max=100)
    private String userName;

    @NotNull
    @Size(max=60)
    private String userFullName;
}
Run Code Online (Sandbox Code Playgroud)

我的控制器是

@RequestMapping(value="/user")
@Controller
public class UserController{

    @RequestMapping(value="/create",method=RequestMethod.GET)
    public String createUserForm(Map model)
    {
        model.put("user",new User());
        return "createUserForm";
    }
    @RequestMapping(value="/create",method=RequestMethod.POST)
    public String createUser  (@Valid @ModelAttribute("user") User user,BindingResult result,Map model)
    {
        if(result.hasErrors())
        {
            return "createRmsUserForm";
        }
        else
        {
            model.put("User",user);
            return "redirect:/home";

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Boz*_*zho 6

  • 你需要在类路径上有一个javax.validation提供程序(例如hibernate-validator-4.x.jar)
  • 你需要启用它dispatcher-servlet.xml.<mvc:annotation-driven />是最简单的方法.