Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.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
Bean validation 对任意方法返回类型设置约束会违反Bean Validation 1.0吗?_Bean Validation - Fatal编程技术网

Bean validation 对任意方法返回类型设置约束会违反Bean Validation 1.0吗?

Bean validation 对任意方法返回类型设置约束会违反Bean Validation 1.0吗?,bean-validation,Bean Validation,我知道 但是,对任意方法(例如,@NotNull public Frobnicator frobnitate())添加@NotNull约束是否会导致Bean Validation 1.0出现问题?或者应该这样——我希望如此-只是被Bean Validation 1.0验证器忽略 (我当然可以使用Hibernate Validator来测试这一点,但这只能告诉我,这个特定的实现要么尊重这种状态,要么不尊重这种状态;它没有告诉我规范作者是否打算在Bean validation 1.0中允许对任意方法

我知道

但是,对任意方法(例如,
@NotNull public Frobnicator frobnitate()
)添加
@NotNull
约束是否会导致Bean Validation 1.0出现问题?或者应该这样——我希望如此-只是被Bean Validation 1.0验证器忽略


(我当然可以使用Hibernate Validator来测试这一点,但这只能告诉我,这个特定的实现要么尊重这种状态,要么不尊重这种状态;它没有告诉我规范作者是否打算在Bean validation 1.0中允许对任意方法设置验证约束。)

,在我诚实的观点中,由于在Validations 1.0中没有指定该行为,因此无法判断所有实现是否都会执行相同的操作。

老实说,由于Validations 1.0中没有指定该行为,因此无法判断所有实现是否都会执行相同的操作。

Hibernate Validator 4.x(BV 1.0的参考实现)提供了方法验证的方法,因此可以在那里验证方法约束

但是仅仅向方法添加约束并不会导致其验证,相反,您需要某种方法拦截器、AOP建议等来在方法验证时调用验证引擎。因此,我认为您不会在BV 1.0中看到任何意外的副作用

我假设Apache BVAL也具有方法验证功能。

Hibernate Validator 4.x(BV 1.0的参考实现)提供了方法验证功能,因此方法约束可能在那里得到验证

但是仅仅向方法添加约束并不会导致其验证,相反,您需要某种方法拦截器、AOP建议等来在方法验证时调用验证引擎。因此,我认为您不会在BV 1.0中看到任何意外的副作用


我认为Apache BVAL也是如此,它还具有方法验证的功能。

谢谢;我应该提到我主要关心JPA环境中的验证。我们只是简单地将
@NotNull
放在重载的get-type方法的返回类型上,就被烧坏了(一个getter不接受任何参数;另一个同名getter接受一个参数;不能将
@NotNull
放在这两个getter上)。我知道这种情况,但正在寻找其他情况。再次感谢您的回答。谢谢您;我应该提到我主要关心JPA环境中的验证。只需将
@NotNull
放在重载get type方法的返回类型上,我们就被烧掉了(一个getter不带参数;另一个同名getter带一个参数;您不能将
@NotNull
放在这两个参数上)。我知道这种情况,但正在寻找其他参数。再次感谢您的回答。