Andreu Font Bardolet created CAMEL-15087:
--------------------------------------------

             Summary: toD doesn't resolve ${headers} if they come from a 
propertyPlaceholders
                 Key: CAMEL-15087
                 URL: https://issues.apache.org/jira/browse/CAMEL-15087
             Project: Camel
          Issue Type: Bug
    Affects Versions: 3.3.0, 3.2.0, 3.1.0
            Reporter: Andreu Font Bardolet


>From camel 3.1 and up, I have detected that <doD/> doesn't resolve variables 
>in propertyPlaceholders.

For example:

if i have an etc/uri.properties with:

{{example=http://${header.url}/}}

 

And in camel Context xml:

{{...}}

{{<camelContext id="example" 
xmlns="http://camel.apache.org/schema/spring";>}}{{}}
  <propertyPlaceholder id="myProperties" 
location="classpath:etc/uri.properties"/>
  <route id="test">
    <from uri="timer:hello?period=3000"/>
    <setHeader name="url"><constant>www.google.es</constant></setHeader>
    <log message="\{{example}}"/>
    <!-- It logs: [http://www.google.es/] -->
    <toD uri="\{{example}}/>
    <!-- It resolves:  http://${header.url}/ instead of [http://www.google.es/] 
-->{{  </route>}}
{{</camelContext>}}
 
 
{{But if i do a kind of a workarround like this, it works:}}
{{...}}

{{<camelContext id="example" 
xmlns="http://camel.apache.org/schema/spring";>}}{{}}
  <propertyPlaceholder id="myProperties" 
location="classpath:etc/uri.properties"/>
  <route id="test">
    <from uri="timer:hello?period=3000"/>
    <setHeader name="url"><constant>www.google.es</constant></setHeader>
    <setHeader name="workarround"><simple>\{{example}}</simple></setHeader>
    <toD uri="${headers.workarround}/>
    <!-- It resolves:  [http://www.google.es/] -->{{  </route>}}
{{</camelContext>}}
 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to