camel http端点动态形成url

时间:2013-02-25 16:45:03

标签: http url dynamic apache-camel endpoint

伙计们我正在尝试使用

{
from("direct:a").to (someUrl).processor(new Processor(){

   @Override
   public void process(Exchange arg0) throws Exception
   {
      // do something
   }

});


where someUrl is of the type http://xyz.com/{id}?test=<value1>&test1=<value2>
}

此URL将在路径的每个请求中更改。

我已经尝试过的。将params作为标题传递并尝试使用标题(“test”)并使用$ {in.header.test}在路径中访问两者似乎都不起作用。

任何建议都会有很大帮助。

3 个答案:

答案 0 :(得分:5)

从驼峰2.16你可以做到这样的事情 -

{{1}}

参考:http://camel.apache.org/message-endpoint.html

答案 1 :(得分:4)

请参阅此常见问题解答,了解有关Camel中动态到端点的信息:http://camel.apache.org/how-do-i-use-dynamic-uri-in-to.html

答案 2 :(得分:2)

您可以使用驼峰属性占位符

http://camel.apache.org/using-propertyplaceholder.html

<camelContext trace="false" xmlns="http://camel.apache.org/schema/spring">
    <propertyPlaceholder location="config/AuditJMSConfig.properties" id="properties" />
    <route id="crudRoute">
        <from uri="activeMQ:queue:{{speedwing.activemq.auditqueue}}/>
    </route>                                                                                    where speedwing.activemq.auditqueue is the property name defined in the peroperties file.

您可以将其用于<to uri="" also