【发布时间】:2014-09-01 14:45:29
【问题描述】:
我有一个 xml,我在其中使用拆分标记在 Spring DSL 中进行处理。 我所做的基本上是在 xml 中搜索一个值,当我找到这个值时,我需要获取另一个标签的值,相同元素的子元素并保存到标题中。这个操作看起来很简单,但我无法在拆分之外恢复我的标题,我需要这样做。我尝试了标题和属性,结果是一样的。
请帮我弄清楚我做错了什么。
代码示例:
<route>
...
<split>
<xpath>//FatherTag/ChildTag</xpath>
<to uri="direct:processingRoute"/>
</split>
</route>
<route>
<from uri="direct:processingRoute"/>
<choice>
<when>
<simple>....</simple>
<setHeader headerName="foo">
<constant>test</constant>
</setHeader>
</when>
</choice>
</route>
【问题讨论】:
-
首先,您确定拆分内的标题是由您的选择/何时设置的?您有一些跟踪级别的日志供我们查看吗?我怀疑这是因为拆分后,生成的 Exchange 是拆分处理的最后一个交换,除非您使用聚合策略
-
好吧,我最终创建了一个处理器并在 java 中进行了 xml 解析。不过谢谢,下次我会选择 AggregationStrategy。
标签: xml apache-camel