无法从xquery的交换头中获取值。举个例子 引起原因:net.sf.saxon.trans.XPathException:对变量$ in.headers.sourceSystem的未解析引用。 https://camel.apache.org/xquery.html
我正在使用在春季启动中运行的骆驼2.21.3。
<route id="exampleRoute">
<from uri="direct:start" />
<setHeader headerName="sourceSystem">
<constant>PR0</constant>
</setHeader>
<transform>
<xquery>
element item {$in.headers.sourceSystem}
</xquery>
</transform>
<to uri="mock:result"/>
</route>
预期结果看起来像
<item>PR0</item>
答案 0 :(得分:1)
这非常简单,但是可以在文档中提及。
<transform>
<xquery>
declare variable $in.headers.sourceSystem external;
element item {$in.headers.sourceSystem}
</xquery>
</transform>