0

我有一个类似于以下内容的 xml,其中包含一些由 url 组成的元素。该 url 是另一个包含另一个 xml 的 web 服务。我需要做的是用来自 web 服务的信息来完成我的 xml,我想用骆驼来实现。下面是例子:

初始 xml

<root>
    <level11>Level1.txt</level1>
    <level12>
        <level21>http://someservice/11</level21>
        <level21>http://someservice/12</level21>
    </level12>
    <level13>
        <level22>http://someservice/21</level22>
        <level22>http://someservice/22</level22>
    </level13>
</root>

http://someservice正在返回一个 xml,我必须将其替换为原始 xml。例如

http://someservice/11返回

<someservice>
    <test>11</test>
</someservice>

http://someservice/12返回

<someservice>
    <test>12</test>
</someservice>

http://someservice/21返回

<someservice>
    <test>21</test>
</someservice>

http://someservice/22返回

<someservice>
    <test>22</test>
</someservice>

我的最终 xml 将是:

<root>
    <level11>Level1.txt</level1>
    <level12>
        <level21>
            <someservice>
                <test>11</test>
            </someservice>
        </level21>
        <level21>
            <someservice>
                <test>12</test>
            </someservice>
        </level21>
    </level12>
    <level13>
        <level22>
            <someservice>
                <test>21</test>
            </someservice>
        </level22>
        <level22>
            <someservice>
                <test>22</test>
            </someservice>
        </level22>
    </level13>
</root>

所以我的问题是我应该使用什么最佳模式来实现这个结果?

4

1 回答 1

1

这似乎适合内容丰富的 EIP。此 EIP 将允许您根据其他服务的输出附加和扩展您的原始消息。通过阅读Content Enrichment EIP文档,在 Apache Camel 站点上了解更多信息。

于 2014-10-28T20:57:55.617 回答