1

有什么方法可以根据属性值对骆驼上下文或路线进行分组?

我将我的环境定义为 -Denv="preprod" 并且我想根据它对路由和上下文进行分组/决定。例如:
对于开发环境:

<camel:route id="foo" >
        <camel:from uri="seda:start"/>
        <camel:to uri="mock:result"/>
    </camel:route>

对于生产:

<camel:route id="foo" >
            <camel:from uri="seda:start"/>
            <camel:to uri="jmsqueue:result"/>
        </camel:route>

我正在使用 Spring Application Context 来声明 Camel Contexts

4

2 回答 2

1

您提到您使用 Spring,然后您可以使用 spring 属性占位符,并且每个环境具有不同的 .properties 文件。然后将端点定义为<endpoint>并在路由中引用这些端点。请参阅此常见问题解答:http ://camel.apache.org/how-do-i-use-spring-property-placeholder-with-camel-xml.html

然后配置 spring 属性占位符以使用您的 -D 系统环境为给定环境加载 .properties 文件。

于 2012-05-11T06:32:51.877 回答
1

与其使用 Spring 占位符来管理您的路线,不如考虑使用 Camel 的 Properties 组件 [1] 来管理您的配置。在配置路由时,我个人更喜欢依赖 Camel 的 API 而不是 Spring 的。

[1] http://camel.apache.org/properties.html

于 2012-05-21T10:40:51.673 回答