当前位置: 首页 > 知识库问答 >
问题:

如何将Camel属性组件添加到Camel上下文?

张积厚
2023-03-14

我目前正在尝试添加属性组件与位置设置到我的属性文件中使用属性占位符在我的项目:

PropertiesComponent pc = new PropertiesComponent();
pc.setLocation("classpath:properties.properties");
context.addComponent("properties", pc);

但是addComponent()函数期望的是Component类型参数,而不期望的是Property tiesComponent,即使属性组件扩展了DefaultComponent类。我已经将此依赖项添加到pom.xml使用它:

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-properties</artifactId>
    <version>3.0.0-M4</version>
</dependency>

并且还添加了资源标签:

<build>
    <resources>
        <resource>
            <directory>${project.basedir}/src/main/resources</directory>
        </resource>
    </resources>
    ...
</build>

我得到的错误看起来像这样:

Java:不兼容类型:org.apache.camel.component.properties.属性Component不能转换为org.apache.camel.Component

我不知道是什么原因,请帮忙。谢谢

共有1个答案

阎晗日
2023-03-14

在Camel上下文中,有一些专用的方法来管理它,例如,在Camel上下文中,有一些专用的方法可以用来管理它。

您的代码应该类似于以下代码:

// create the properties component
PropertiesComponent pc = new PropertiesComponent();
pc.setLocation("classpath:properties.properties");

// add properties component to camel context
context.setPropertiesComponent(pc);

或者干脆上下文。getPropertiesComponent()。setLocation(“classpath:properties.properties”)

 类似资料:
  • 如果我加上 然后我得到下面的错误。 在我的蓝图中使用camel-http4的正确方式是什么?在卡拉夫的camel路由中使用camel-http4的正确方式是什么?我应该如何修改功能。xml? 组织。奥斯基。服务分解器。ResolutionException:无法解析根:缺少需求[root]osgi。身份奥斯基。身份=社会身份。卡尔;类型=卡拉夫。特色version=“[1.0.0.快照,1.0.0

  • 如何将camel中的属性传递给不同的camel上下文?我当前的体系结构将处理4种不同类型的消息(A、B、C、D),它只对所有这些消息使用相同的路由,而保存时根据消息类型更改DB表名,但现在我有一个要求,我只需要为特定消息从exchange对象中保存很少的值。我正在考虑在路由中设置一个属性,消息类型是'E',我将把它指向另一个路由。但是如何将属性值传递给不同的camel上下文

  • 问题内容: 给定一个data.tsv文件,例如: 给定一个topojson.json文件,例如:( 结构正确,数字值是随机的) 如何使用公共字段(1)将其他字段(2)的值注入json文件? 1]:和 2]: 最终结果应包含: 编辑:接受的答案: 问题答案: 尝试使用此: 哪个应该输出: 从命令行参考维基: --id- 要升级为几何ID的要素 属性的 名称 通过将该属性与该选项一起使用,可以将其提升

  • 我正在从apache camel调用groovy脚本。当我调用groovy脚本时,我收到以下错误提示。我如何克服这个问题?我尝试了setProperty()。setHeader但没有运气。 错误: 我尝试按以下方式设置属性,但遇到了相同的错误 我知道我可以这样做。但我想用apache camel groovy组件来实现这一点。 测验谷胱甘肽

  • 问题内容: 如何添加到特定内容?不起作用。 问题答案: jQuery <1.9 jQuery 1.9以上

  • 属性文件如何与Apache Camel一起使用,以引用可配置的属性。例如,如果有从文件夹读取文件的路由,那么如何在属性文件中配置该文件夹位置。我正在使用JavaDSL。