Apache camel 如何在ApacheCamel(SpringXML)中使用SimpleRegistry属性
我想使用SimpleRegistry来存储属性(作为全局变量)。在具有jms端点的路由中,使用Apache camel 如何在ApacheCamel(SpringXML)中使用SimpleRegistry属性,apache-camel,spring-camel,Apache Camel,Spring Camel,我想使用SimpleRegistry来存储属性(作为全局变量)。在具有jms端点的路由中,使用setProperty更改属性。camel文档上周发生了更改,有许多死链接,还有注册表页面。我没有发现任何描述simpleRegistry使用的示例 我用这根绳子做底座。我不使用保险丝或补丁骆驼wildfly,因为它对于我们的简单模块来说太大了 . . . ${headers[myToken]} 标记是:{myProperty} 使用上面定义的camel上下文,我得到了一个java.io.FileN
setProperty
更改属性。camel文档上周发生了更改,有许多死链接,还有注册表页面。我没有发现任何描述simpleRegistry使用的示例
我用这根绳子做底座。我不使用保险丝或补丁骆驼wildfly,因为它对于我们的简单模块来说太大了
.
.
.
${headers[myToken]}
标记是:{myProperty}
使用上面定义的camel上下文,我得到了一个java.io.FileNotFoundException
在注册表中找不到属性simpleRegistry。
当我使用
并创建test.properties文件时,一切正常,但我无法更改属性。setProperty
标记中的操作被忽略
我需要全局变量的原因是,我通过jms主题将动态配置(myToken)发送到camel上下文。单个路由应全局存储此配置。如果通过rest组件调用其他路由,则此路由需要令牌进行选择。好的,您的问题中有多个主题
设置应用程序属性李>
设置一个交换属性,而不是应用程序属性。使用此选项,您可以在中保存值
但是,请仔细考虑为什么需要这种变量。这也可能是设计问题的症状。好的,您的问题中有多个主题
设置应用程序属性李>
设置一个交换属性,而不是应用程序属性。使用此选项,您可以在中保存值
但是,请仔细考虑为什么需要这种变量。这也可能是设计问题的症状。或者,您可以按照下面使用PropertiesComponent的方法获得相同的结果
<bean id="applicationProperties" class="java.util.Properties"/>
<bean id="properties" class="org.apache.camel.component.properties.PropertiesComponent">
<property name="location" value="classpath:application.properties"/>
<property name="overrideProperties" ref="applicationProperties" />
</bean>
在驼峰上下文中定义属性占位符:
<propertyPlaceholder id="propertiesRef" location="ref:applicationProperties" />
设置一个属性,如下所示:
<bean ref="applicationProperties" method="setProperty(token, 'Test'})" />
要获取属性:${properties:token}或者,您可以按照下面使用PropertiesComponent的方法获得相同的结果
<bean id="applicationProperties" class="java.util.Properties"/>
<bean id="properties" class="org.apache.camel.component.properties.PropertiesComponent">
<property name="location" value="classpath:application.properties"/>
<property name="overrideProperties" ref="applicationProperties" />
</bean>
在驼峰上下文中定义属性占位符:
<propertyPlaceholder id="propertiesRef" location="ref:applicationProperties" />
设置一个属性,如下所示:
<bean ref="applicationProperties" method="setProperty(token, 'Test'})" />
获取属性:${properties:token}