【发布时间】:2018-07-25 18:50:12
【问题描述】:
您好我有一个场景,我通过soap服务调用从远程ftp位置选择文件得到通知。ftp服务器详细信息将相同,但文件夹名称和文件将动态发送, 我如何使用 apache camel 来实现它? 任何建议或想法都可能会有所帮助。
【问题讨论】:
标签: camera jbossfuse integration-patterns
您好我有一个场景,我通过soap服务调用从远程ftp位置选择文件得到通知。ftp服务器详细信息将相同,但文件夹名称和文件将动态发送, 我如何使用 apache camel 来实现它? 任何建议或想法都可能会有所帮助。
【问题讨论】:
标签: camera jbossfuse integration-patterns
我认为您应该为此使用 headers。因此,您将动态信息加载到标头中,并在带有 toD 的 ftp 组件中使用它们。
所以你可以有类似下面的东西
<toD uri="sftp:username:password@ftp.server.com/${header.CamelFolder}?fileName=${header.CamelDownloadFile}"/>
但由于您想从路径中间的 FTP 获取,您可以尝试 Content Enricher EIP
<route>
<from uri="..."/>
<!-- set your dynamic values as headers -->
<setHeader headerName="CamelFolder">
<simple>...</simple>
</setHeader>
<setHeader headerName="CamelDownloadFile">
<simple>...</simple>
</setHeader>
<pollEnrich>
<simple>sftp:username:password@ftp.server.com/${header.CamelFolder}?fileName=${header.CamelDownloadFile}</simple>
</pollEnrich>
...
</route>
【讨论】: