Apache camel ftp组件 - 成功传输的通知

时间:2014-11-20 19:50:51

标签: java apache-camel camel-ftp

我们正在使用Camel构建Java应用程序,以便在两个FTP位置之间传输文件。有没有办法获得成功传输文件的通知?我们不允许使用JMS解决方案来构建应用程序。

1 个答案:

答案 0 :(得分:1)

我希望您可以创建另一个路由并将seda / vm作为端点。此端点需要在ftp端点之后调用。

<route id="MainRoute">
<from uri="ftp:RemoteLocation"/> 
<from uri="seda:Retry"/>
<to uri="seda:MyLog"/>
<!--Your Main Processing logic -->
</route>

<route id="Notification-processor">
<from uri="seda:MyLog"/>
<!--Your Logging/Notification Processing logic -->
</route>

在上述Notification-processor场景中,您可以进行自定义通知/日志活动。这是您的自定义通知逻辑。如果您需要通知异常情况,您可以在通知处理器中找到发送通知的终端。

你需要编写逻辑来检查消息是否完整,否则你可以在Notification-processor中调用一个bean,它可以有动态路由从ftp位置提取特定文件并重新处理它。如下所示

<route id="Notification-processor">
<from uri="seda:MyLog"/>
<!--Anomaly checker  -->
<to uri="seda:Retry"/>
<!--Your Logging/Notification Processing logic -->
</route>