如何进行XML拆分并保留父元素?



我知道Spring Integration相当古老,但我有一段代码需要小的修改才能继续。我需要拆分传入的 XML 消息并保留父节点。这是我的 XML:

<Order>
<Item>A</Item>
<Item>B</Item>
</Order>

我想分成 2 个 XML 并保留 XSD 验证。

<Order>
<Item>A</Item>
</Order>

<Order>
<Item>B</Item>
</Order>

这样做了:

<beans xmlns:int-xml="http://www.springframework.org/schema/integration/xml">
...
<int-xml:xpath-splitter id="splitter">
<int-xml:xpath-expression expression="/Order/Item"/>
</int-xml:xpath-splitter>
...

它分裂成

<Item>A</Item> 

<Item>B</Item> 

但我需要父母在那里。无论如何让它工作?提前谢谢。

你需要的是<int-xml:xpath-splitter>后的<int-xml:xslt-transformer>

有关详细信息,请参阅参考手册:https://docs.spring.io/spring-integration/docs/5.2.0.RELEASE/reference/html/xml.html#xml-xslt-payload-transformers

您需要了解什么是 XSLT 等等。

我知道Spring Integration相当古老

??

它得到了积极的维护和增强;本月有一个全新的版本。

您需要自定义拆分器,也可以在拆分器之后添加转换器以添加外部节点。

相关内容

最新更新