我有一个不寻常的用例。
在我的左手中,我有一个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实例来验证 - 我只有 进入带注释元素的值。
这里有前进的方向吗?