在Apache Camel XML中指定可选的环境属性

时间:2015-07-02 10:12:06

标签: apache-camel

我在Apache Camel中使用了一个环境变量,它是可选的,在某些情况下,值不会存在,但我仍然希望我的配置工作,假设未找到的环境变量为空。

camelContext id="inboud" xmlns="http://camel.apache.org/schema/spring">
    <!-- and then let Camel use those @Component scanned route builders -->
    <propertyPlaceholder id="properties"
        location="properties/app${env}.properties" ignoreMissingLocation="true" />

    <!-- Messages placed here will be raw data from force.com-->
    <template id="frceProducerTemplate" />

这里我想要的$ {env}是可选的,如果它不存在,那么该位置必须被视为properties / app.properties。

任何人都知道吗?

1 个答案:

答案 0 :(得分:1)

如果没有ENV变量,则不支持默认值。您可以在此处阅读有关使用属性占位符的更多信息:http://camel.apache.org/using-propertyplaceholder.html

但是,您可以添加2个位置,一个位于ENV,另一个位于ENV。然后打开ignoreMissingLocation="true"然后如果ENV不存在,Camel将忽略它。