【问题标题】:Using Camel Bean validator Component使用 Camel Bean 验证器组件
【发布时间】:2014-08-12 07:48:04
【问题描述】:

我在使用 Camel Bean Validator 时遇到异常。例外是No component found with scheme: bean-validator 我的 POM 中有这些依赖项

<dependency>
    <groupId>javax.validation</groupId>
    <artifactId>validation-api</artifactId>
    <version>1.1.0.Final</version>
</dependency>
<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-bean-validator</artifactId>
    <version>2.13.2</version> 
    <scope>provided</scope>
</dependency>

我正在使用如下的 Bean Validator 组件

from("direct:XXX").process(new Processor() {
    @Override
    public void process(Exchange exchange) throws Exception {
        Car car = new Car();
        //car.setVehicleId(1);
        car.setName("Swift");
        car.setCompany("Maruti");

        exchange.getIn().setBody(car);              
    }
}).to("bean-validator://x").process(new Processor() {
    @Override
    public void process(Exchange arg0) throws Exception {
        LOG.debug("Bean Validation is Success");
    }
});

但是当我将生成的战争部署到 Wildfly 中时,我得到了异常 No component found with scheme: bean-validator。令我惊讶的是,代码在独立应用程序中运行良好。 非常感谢您的帮助。

【问题讨论】:

标签: java apache-camel


【解决方案1】:

问题是您定义了提供的范围,这意味着 JAR 可能已经是服务器的一部分。您通常只使用为 API JAR 提供的范围,例如 servlet api 等。

所以改变这个

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-bean-validator</artifactId>
    <version>2.13.2</version> 
    <scope>provided</scope>
</dependency>

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-bean-validator</artifactId>
    <version>2.13.2</version> 
</dependency>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2013-06-04
    • 2015-02-13
    • 2012-10-12
    • 1970-01-01
    相关资源
    最近更新 更多