我有一个Apache Camel路由,其目的是获取文档中链接的xml文档和文件。
<route id="route-ftp">
<from uri="ftp://foo@server:21/data?password=xxx&include=.*.xml"/>
<to uri="myBean"/>
</route>
当它到达myBean时,我想解析文件并使用相同的ftp设置来获取xml文件中列出的文件。 或者也许使用xpath同时获取所有内容。
<root>
<article>
<headline>Headline</headline>
<image src="images/cat.jpg"/>
</article>
</root>
文件名取自上面的xml图像标记和src属性。
然后,我想将原始文件与我的图像一起发送到包中。
我无法找到解决问题的正确方法。
答案 0 :(得分:2)
我可能会这样做。
根据文件的结构,我会像你一样使用它。然后我会分割每行的主体(假设每行包含一个文件名)。使用分离器EIP完成拆分。现在每个正文都包含文件名。
然后我会使用Camel的dynamicTo来使用ftp参数丰富路径和文件。您可以保存ftp参数属性,使它们始终相同。
通过这种方式,您可以获取列表,遍历列表并获取列表中每一行的文件。