Apache camel 在camel配置中读取属性文件值
我在camel.config中定义了以下路由Apache camel 在camel配置中读取属性文件值,apache-camel,Apache Camel,我在camel.config中定义了以下路由 <choice> <when> <simple>${BROADBAND_DN_RBSID_SWITCH} == 'DN'</simple> <to uri="bean:bbGetServiceProfileProcessorByDN"/> </when> </choice> 不能在简单语言中使用${xxx}来引
<choice>
<when>
<simple>${BROADBAND_DN_RBSID_SWITCH} == 'DN'</simple>
<to uri="bean:bbGetServiceProfileProcessorByDN"/>
</when>
</choice>
不能在简单语言中使用
${xxx}
来引用属性占位符。而是使用其属性
功能:
<simple>${properties:BROADBAND_DN_RBSID_SWITCH} == 'DN'</simple>
${properties:BROADBAND\u DN\u RBSID\u SWITCH}=='DN'
更多信息请参见文档:其他可能的解决方案:
您可以将骆驼上下文的属性持有者定义为:
<camelContext id="my-camel-context">
<propertyPlaceholder
location="file:${config.path}/my.properties" id="properties" />
请注意,在这个级别上,您可以使用常规Spring或System的其他属性(即${config.path})
然后在路由中,您可以使用{{{符号作为
<simple>{{BROADBAND_DN_RBSID_SWITCH}} == 'DN'</simple>
{{BROADBAND\u DN\u RBSID\u SWITCH}}=='DN'
与常规弹簧propertyPlaceholder相比,Camel propertyPlaceholder有一些局限性,但就文件而言,它工作得很好
<simple>{{BROADBAND_DN_RBSID_SWITCH}} == 'DN'</simple>