JSR 303 - 自定义验证程序中带注释字段的名称

问题描述:

我对自定义注释有疑问。更确切地说,我是否可以访问自定义验证程序中带注释的字段的名称? 如果是,我该如何访问?JSR 303 - 自定义验证程序中带注释字段的名称

谢谢

不,您不能从限制验证程序中访问验证元素的名称。虽然(通过getPropertyPath()),但是由于违反了结果而暴露出来。

在Hibernate实现,你可以使用反射ConstraintValidatorContext.basePath.currentLeafNode.name

您可以通过以下EXP

((ConstraintValidatorContextImpl) context).getConstraintViolationCreationContexts().get(0).getPath() 
访问路径它