Spring集成将文件发送到远程目录

时间:2017-06-30 15:25:17

标签: spring-boot ftp spring-integration

我正在尝试通过FTP将文件从本地目录发送到远程目录, 并且能够成功发送文件,但另外文件正在FTP到本地目录,因为ftpInbound也建立了FTP连接,我不希望我的应用程序这样做。如果我删除入站FTP通道适配器,也无法将本地目录路径提供给ftpOutbound。有没有其他方法可以解决这个问题?

<int-ftp:inbound-channel-adapter id="ftpInbound"
                                channel="ftpChannel" 
                                session-factory="ftpClientFactory"
                                filename-pattern="*.txt"
                                local-directory="$dina-communication.batch-{localDirectory}"
                                temporary-file-suffix=".writing">
<int:poller fixed-rate="10000" />

</int-ftp:inbound-channel-adapter>

<int-ftp:outbound-channel-adapter  id="ftpOutbound"
                                channel="ftpChannel" 
                                session-factory="ftpClientFactory"
                                remote-directory="$dina-communication.batch-{Remote_directory}"
                                temporary-file-suffix=".writing">
</int-ftp:outbound-channel-adapter>

1 个答案:

答案 0 :(得分:1)

如果您谈到将本地目录内容提供给FTP服务器,您应该考虑真正使用<int-file:inbound-channel-adapter>http://docs.spring.io/spring-integration/reference/html/files.html#file-reading

此问题还有一个示例:https://github.com/spring-projects/spring-integration-samples/tree/master/basic/file

您应该仅使用<int-ftp:inbound-channel-adapter>替换<int-file:inbound-channel-adapter>