Spring integration 如何将service activator连接到sftp:入站通道适配器

Spring integration 如何将service activator连接到sftp:入站通道适配器,spring-integration,sftp,Spring Integration,Sftp,案例:我想从SMTP服务器获取一个文件到本地,并在文件下载到本地后进行后期处理。 在下载每个文件之后,我想做一个业务逻辑(比如上传到AWSS3)。每当文件下载到本地时,我都要调用messageHandler.handleSftp()。有什么建议吗 <int-sftp:inbound-channel-adapter id="sftpInbondAdapter" auto-startup="true" channel="receiveChannel" session-fact

案例:我想从SMTP服务器获取一个文件到本地,并在文件下载到本地后进行后期处理。 在下载每个文件之后,我想做一个业务逻辑(比如上传到AWSS3)。每当文件下载到本地时,我都要调用
messageHandler.handleSftp()
。有什么建议吗

<int-sftp:inbound-channel-adapter id="sftpInbondAdapter"
    auto-startup="true" channel="receiveChannel"

    session-factory="sftpSessionFactory"
    local-directory="file:/fluentbatch/sftp" remote-directory="/tmp/datlaa"
    auto-create-local-directory="true" delete-remote-files="false"
    filename-pattern="*.txt">
    <int:poller fixed-rate="1000" max-messages-per-poll="1" />
</int-sftp:inbound-channel-adapter>

<int:channel id="receiveChannel">
</int:channel>

<int:service-activator input-channel="receiveChannel"
    method="handleSftp" ref="messageHandler" output-channel="nullChannel" auto-startup="true">
</int:service-activator>


不清楚你在问什么
MessageHandler.handleSftp(File foo)
只是一个POJO方法,用于获取
文件
负载。Gary我想在获取新文件时调用service activator来执行一些业务逻辑。如何配置它。?您所拥有的将可以做到这一点。谢谢Gary,它工作正常。如果我从本地删除该文件,并且服务器中也有相同的文件,则它将处理到本地,但不调用服务activatorSee;默认情况下,本地筛选器只允许文件处理一次。如果您希望处理相同的文件名,请将其更改为
接受文件列表过滤器
MessageHandler.handleSftp(File foo)
只是一个POJO方法,用于获取
文件
负载。Gary我想在获取新文件时调用service activator来执行一些业务逻辑。如何配置它。?您所拥有的将可以做到这一点。谢谢Gary,它工作正常。如果我从本地删除该文件,并且服务器中也有相同的文件,则它将处理到本地,但不调用服务activatorSee;默认情况下,本地筛选器只允许文件处理一次。如果要处理相同的文件名,请将其更改为
AcceptAllFileListFilter