我使用Spring加载属性:
<util:properties id="service-properties">
...
<prop key="postScript"></prop>
...
</util:properties>
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" id="propertyConfigurer"><property name="properties" ref="service-properties" />
</bean>
但是,其中一个属性可以具有如下值(这是一个camel xml简单语言片段):
postScript=<setBody><simple>${in.header.type}</simple></setBody>
问题是,当我得到这个属性的值时,它是:
postScript=<setBody><simple></simple></setBody>
我认为它似乎试图解析$ {in.header.type}变量,认为它是一个系统变量可能?
我想知道如何阻止此变量被解决?我试过用引号逃避它但没有好处。
答案 0 :(得分:0)
从Camel文档中得到了答案: - )
http://camel.apache.org/simple.html
替代语法
从Camel 2.5开始,您还可以使用使用$ simple {}作为占位符的替代语法。 这可以用于避免在使用Spring属性占位符和Camel时发生冲突的情况。