动态参数到端点

时间:2013-04-23 05:46:04

标签: xpath apache-camel endpoint

如何将动态值设置为端点的参数?

有效负载:

<person>
<name>john</name>
<acno>9876543210</acno>
</person>

路线:

<route>
    <from uri="http://localhost:8092/test/"/>
    <setProperty propertyName="acno">
            <xpath resultType="java.lang.String">//person/acno</xpath>
    </setProperty>
    <setProperty propertyName="name">
            <xpath resultType="java.lang.String">//person/name</xpath>
    </setProperty>
    <to uri="https://server/rest/services/test?accountno=${property.acno}&amp;accountname=${property.name}"/>
</route>

参数值希望通过xpath从有效负载中获取。 我们非常感谢您解决此问题或提供解决方法的任何帮助。

1 个答案:

答案 0 :(得分:1)

您无法使用端点URI内的标头中的动态内容。

你可以做的是通过使用一些xpath或其他任何东西来预构建URI并将其放入标题中。然后,您可以使用Recipient List构造来使用动态创建的URI。

您在链接中有一些示例

更新:请参阅Claus Ibsen在评论中提出的link