【问题标题】:Spring MVC 3 Validation not workingSpring MVC 3验证不起作用
【发布时间】:2011-09-13 20:21:01
【问题描述】:

我有一个要使用 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;
}

我的控制器是

@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";

        }
    }
}

【问题讨论】:

    标签: java validation spring-mvc


    【解决方案1】:

    为什么出现错误时显示另一个页面?尝试将用户返回到同一页面:在您的情况下是 createUserForm 而不是 createRmsUserForm

    【讨论】:

      【解决方案2】:

      如果你使用的是 maven

          <dependency>
              <groupId>org.springframework</groupId>
              <artifactId>spring-webmvc</artifactId>
              <version>3.0.6.RELEASE</version>
          </dependency>
          <dependency>
              <groupId>org.hibernate</groupId>
              <artifactId>hibernate-validator</artifactId>
              <version>4.2.0.Final</version>
          </dependency>
      

      【讨论】:

        【解决方案3】:
        • 您的类路径中需要一个 javax.validation 提供程序(例如 hibernate-validator-4.x.jar)
        • 您需要在dispatcher-servlet.xml 中启用它。 &lt;mvc:annotation-driven /&gt; 是最简单的方法。

        【讨论】:

        • 我已经尝试添加 hibernate-validator-4.0.0.Beta1.jar 并且 也被添加到 servlet-context.xml 中。但没有变化:(
        • 显示我的调度程序 servlet xml。此外,休眠验证器很长一段时间都不是测试版 - 获取更新版本。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-09-07
        • 2014-02-24
        • 1970-01-01
        • 2011-06-07
        相关资源
        最近更新 更多