1

我知道Bean Validation 1.1 引入了对验证任意方法的支持

但是在 Bean Validation 1.0@NotNull中添加,比如说,对任意方法(例如@NotNull public Frobnicator frobnicate())的约束会导致问题吗?或者这样的元数据——我希望!——只是被 Bean Validation 1.0 验证器忽略?

(我当然可以使用 Hibernate Validator 对此进行测试,但这只会告诉我这个特定的实现要么尊重这种事态,要么不尊重这种情况;它并没有告诉我规范作者是否打算允许放置验证约束Bean Validation 1.0 中的任意方法。)

4

2 回答 2

1

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

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

我假设它与 Apache BVAL 相同,它也具有方法验证功能。

于 2013-05-24T07:49:29.137 回答
0

老实说,由于 Validations 1.0 中没有指定行为,因此无法判断所有实现都会这样做。

于 2013-05-23T19:46:22.403 回答