如何直接使用ConstraintValidator?

时间:2016-02-01 17:46:49

标签: java validation hibernate-validator

我有一个不寻常的用例。

在我的左手中,我有一个String值(例如," 5001")。在我的右手中,我有一个Annotation字面值,其中包含一些有趣的信息。它基本上定义了一个名为" slot"为此(在此示例中)" 5001"是一个合适的价值。

现在让我们说我的另一方面有一些javax.validation.constraints Annotation(如Digits)。 请注意,我没有任何字段或方法或任何其他AnnotatedElement的引用 - 只有javax.validation.constraints Annotation字面本身。这是奇怪的部分,但把它当作事实。

有了这些位,我可以几乎使用ConstraintValidator来查看" 5001"是"插槽的有效值"由我的注释文字定义。但并不完全,因为我无法在ConstraintValidatorContext方法中获得isValid()

(我在这个问题上看过this question,这表明我运气不好。)

我也不能简单地使用Validator API,因为我没有验证bean实例,而只是一个值,如果一切顺利,可能在XSLT文件中间接使用,如果你必须知道。 :-)确定一切是否合适,我想在这里使用javax.validation。但是,如上所述,我没有一个带有注释元素的bean实例来验证 - 我只有 进入带注释元素的值。

这里有前进的方向吗?

0 个答案:

没有答案