Hibernate ConstraintValidation while 运行 Junit

Hibernate ConstraintValidation while running Junit

我正在努力创建一个新的 Table A 并将其 ID 引用为现有 Table B

中的新列

为简洁起见,我省略了整个实体 class。

import javax.validation.constraints.NotNull;
import org.apache.bval.constraints.NotEmpty;    
public class TableB implements Serializable {
    --
    @NotNull
        @NotEmpty
        @Column(name = "ContactReasonID")
        private Integer contactReasonID;
    ---
    }

我的Junit测试方法如下

@Test
public void testUpdateInteraction(){
    try {
        interactionService.updateTableB(228, 2, 2642, "test");
        assertTrue(true);
    } catch (Exception e) {
        assertTrue(false);
    }       
}

updateTableB的参数都是参考旧列。 但是当我 运行 测试用例时,我得到了如下所示的 ConstraintViolationException

[ConstraintViolationImpl{rootBean=net.ashwin.entity.TableB@174d3343, propertyPath='contactReasonID', message='may not be null', leafBean=net.ashwin.entity.TableB@174d3343, value=null}]

但是 contactReasonID 是一个可以为 null 的列。我对约束在哪里感到困惑。

环境详情:

 <spring-framework.version>3.1.2.RELEASE</spring-framework.version>                 <spring-data-jpa>1.4.4.RELEASE</spring-data-jpa>
    <hibernate-framework.version>4.0.1.Final</hibernate-framework.version>

任何指示或指导都会有很大帮助。

您已使用 @NotNull 约束条件。尝试删除它。