我正在使用 spring 集成来下载文件并处理它们。
<int-sftp:inbound-channel-adapter channel="FileDownloadChannel"
session-factory="SftpSessionFactory"
remote-directory="/home/sshaji/from_disney/files"
filter = "modifiedFileListFilter"
local-directory="/home/sshaji/to_disney/downloads"
auto-create-local-directory="true" >
<integration:poller cron="*/10 * * * * *" default="true"/>
</int-sftp:inbound-channel-adapter>
<integration:transformer input-channel="FileDownloadChannel"
ref="ErrorTransformer"
output-channel="EndChannel"/>
执行由轮询器启动。它调用“FileDownloadChannel”,然后尝试从 sftp 服务器下载文件。我想为此入站通道适配器指定一个输出通道,但它没有任何输出通道属性。
所以我将变压器命名为与入站通道适配器相同的名称,这样一旦轮询器启动它也会被调用。
我的问题是变压器在下载发生之前被调用,因此变压器不会得到任何输入来处理并导致错误。
有什么方法可以为这两个任务指定“订单”属性。或者入站通道适配器的输出通道是否有任何解决方法?
我真的很感激这方面的任何帮助。