Camel:从PROPERites文件定义jms队列名称

时间:2015-12-14 11:55:54

标签: java spring jms apache-camel

我试图在spring dsl中使用camel中的可配置队列名来定义jms监听器。 方法我接下来是硬编码值:

<from uri="jms:queue:update.q?messageConverter=#messageConverter"/>

,这适用于队列名称update.q

要使用可配置的队列名称,我尝试了下一种方法:

<from uri="jms:queue:${update.q}?messageConverter=#messageConverter"/>

但它开始侦听名为${update.q}的队列,而不是来自proprties文件的值。

任何想法如何配置jms队列名称?

提前致谢。

2 个答案:

答案 0 :(得分:1)

将其更改为

false

并添加&#34;属性&#34;豆

<from uri="jms:queue:{{update.q}}?messageConverter=#messageConverter"/>

答案 1 :(得分:0)

将通配符表示法更改为Spring样式:

<context:property-placeholder location="file:///opt/java/my.properties" />

然后,确保您的属性文件由Spring属性占位符注册:

<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-spring</artifactId>
  <version>${camel.version}</version>
</dependency>

最后,确保您的项目包含必要的Spring Camel集成依赖项,例如:

WHERE '.$date1.' between ("'.$start_date.'" AND "'.$end_date.'")');