每个人。
因此,我有一个带有控制器的 SpringBoot 应用程序,该控制器具有多种方法,将以下 POJO 作为参数:
package com.example.dto;
import lombok.Data;
@Data
public class MyEntity {
@NotNull
private String fieldA;
private String fieldB;
}
对于控制器端点之一,我想应用额外的验证逻辑,所以在validation.xml
我添加以下内容:
<constraint-mappings>
<bean class="com.example.controller.SampleController" ignore-annotations="false">
<method name="doFoo">
<parameter type="com.example.dto.MyEntity">
<valid />
<constraint annotation="com.example.validation.ValidEntity" />
</parameter>
</method>
</bean>
</constraint-mappings>
com.example.validation.ValidEntity
是我要应用的约束注释。
@NotNull
我的问题是,只有在定义的检查MyEntity
成功通过时才会调用这个额外的约束。如果fieldA
为 null,ValidEntity
则忽略约束,客户端会收到不完整的验证结果。我错过了什么?