2.12. Bean Validator
使用 Java Bean Validation API 验证消息正文。
2.12.1. 内部内容 复制链接链接已复制到粘贴板!
-
Bean Validator 组件, URI 语法:
bean-validator:label
有关使用和配置详情,请参阅上述链接。
2.12.2. Maven 协调 复制链接链接已复制到粘贴板!
在 code.quarkus.redhat.com 上创建一个具有此扩展名的新项目
或者在现有项目中添加协调:
<dependency> <groupId>org.apache.camel.quarkus</groupId> <artifactId>camel-quarkus-bean-validator</artifactId> </dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-bean-validator</artifactId>
</dependency>
2.12.3. 使用方法 复制链接链接已复制到粘贴板!
2.12.3.1. 配置 ValidatorFactory 复制链接链接已复制到粘贴板!
此扩展实施利用 Quarkus Hibernate 验证器扩展。
因此,无法通过 Camel 的属性 (constraintValidatorFactory
, messageInterpolator
, traversableResolver
, validationProviderResolver
和 validatorFactory
) 配置 ValidatorFactory
。
您可以通过创建 Bean 来配置 ValidatorFactory
,它将注入到默认的 ValidatorFactory
(由 Quarkus 创建)。如需更多信息,请参阅 Quarkus CDI 文档。
2.12.3.2. 以原生模式自定义验证组 复制链接链接已复制到粘贴板!
当在原生模式中使用自定义验证组时,需要注册所有接口才能反映出( 请参阅文档)。
例如:
@RegisterForReflection public interface OptionalChecks { }
@RegisterForReflection
public interface OptionalChecks {
}
2.12.4. Camel Quarkus 限制 复制链接链接已复制到粘贴板!
无法将限制描述为 XML (通过提供文件 META-INF/validation.xml),只支持 Java 注解。这是因为 Quarkus Hibernate Validator 扩展的限制(请参阅问题)。