Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么方法级验证在Spring中不起作用?_Java_Spring_Bean Validation - Fatal编程技术网

Java 为什么方法级验证在Spring中不起作用?

Java 为什么方法级验证在Spring中不起作用?,java,spring,bean-validation,Java,Spring,Bean Validation,学生班级: package com.solvegen.education.student.enrollment.core.model; import com.sun.istack.internal.NotNull; import java.util.Date; public class Student { private Long id; @NotNull private String userName; @NotNull private Str

学生班级:

package com.solvegen.education.student.enrollment.core.model;

import com.sun.istack.internal.NotNull;

import java.util.Date;

public class Student {
    private Long id;

    @NotNull
    private String userName;

    @NotNull
    private String firstName;

    @NotNull
    private String lastName;

    @NotNull
    private String password;

    @NotNull
    private String emailAddress;

    @NotNull
    private Date dateOfBirth;

    public Date getDateOfBirth() {
        return dateOfBirth;
    }

    public String getEmailAddress() {
        return emailAddress;
    }

    public String getFirstName() {
        return firstName;
    }

    public Long getId() {
        return id;
    }

    public String getLastName() {
        return lastName;
    }

    public String getPassword() {
        return password;
    }

    public String getUserName() {
        return userName;
    }

    public void setDateOfBirth(Date dateOfBirth) {
        this.dateOfBirth = dateOfBirth;
    }

    public void setEmailAddress(String emailAddress) {
        this.emailAddress = emailAddress;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

}
spring-config.xml的内容

<bean id="validator"
      class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
    <property name="providerClass" value="org.hibernate.validator.HibernateValidator"/>
</bean>
<bean id="validatorPostProcessor"
      class="org.springframework.validation.beanvalidation.MethodValidationPostProcessor">
    <property name="validator" ref="validator"/>
</bean>
pom.xml的内容

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>5.2.1.Final</version>
</dependency>
<dependency>
    <groupId>javax.el</groupId>
    <artifactId>javax.el-api</artifactId>
    <version>2.2.4</version>
</dependency>

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.2.7</version>
</dependency>
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>1.2.2</version>
</dependency>

org.hibernate
休眠验证器
5.2.1.最终版本
javax.el
javax.el-api
2.2.4
org.mybatis
mybatis
3.2.7
org.mybatis
mybatis泉
1.2.2
当我在方法声明中使用
@NotNull
而不是
@Valid
时,所有工作正常(当我传递null而不是Student类实例时,验证框架抛出异常)


我做错了什么?或者字符串中的方法级验证不支持参数的@Valid注释?

问题出在com.sun.istack.internal.NotNull中。我从不正确的包装中进口。必须是javax.validation.constraints.NotNull

我不明白这个问题。你在做什么,你期望会发生什么,会发生什么?对不起,各位。问题出现在com.sun.istack.internal.NotNull中。我从不正确的包装中进口。必须是javax.validation.constraints.NotNull
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>5.2.1.Final</version>
</dependency>
<dependency>
    <groupId>javax.el</groupId>
    <artifactId>javax.el-api</artifactId>
    <version>2.2.4</version>
</dependency>

<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.2.7</version>
</dependency>
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis-spring</artifactId>
    <version>1.2.2</version>
</dependency>