0

我有一个 Apache Camel 路由,其目的是获取文档中链接的 xml 文档和文件。

<route id="route-ftp">
     <from uri="ftp://foo@server:21/data?password=xxx&amp;include=.*.xml"/>
     <to uri="myBean"/>
 </route>

当它到达 myBean 时,我想解析文件并使用相同的 ftp 设置来获取 xml 文件中列出的文件。或者也许使用 xpath 同时获取它们。

<root>
    <article>
        <headline>Headline</headline>
        <image src="images/cat.jpg"/>
    </article>
</root>

文件名取自上述 xml 图像标签和 src 属性。

然后,我想将原始文件与我的图像一起打包在一个包中。

我找不到解决问题的正确方法。

4

1 回答 1

2

我可能会这样做。

  1. 根据您的文件的结构,我会像您一样使用它。然后我将每行拆分正文(假设每行包含一个文件名)。拆分是使用拆分器 EIP 完成的。现在每个正文都包含文件名。

  2. 然后,我将使用 Camel 的 dynamicTo 使用 ftp 参数通过文件丰富路由。您可以保存 ftp 参数是属性,以便它们始终相同。

通过这种方式,您获取列表、迭代列表并获取列表中每一行的文件。

于 2017-08-21T10:42:43.867 回答