我有一个包含两个步骤的工作春季批处理作业,我想在 ftp 发送步骤中添加一个重试逻辑。
- 第一步从数据库中读取并输出 xml 文件
- 第二步使用spring集成将此文件发送到ftp主机
第二步配置如下
<step id="sendFileByFtp" next="moveResource">
<tasklet ref="ftpJobTasklet" />
</step>
<bean id="ftpJobTasklet" class="com...FtpOutboundTasklet" scope="step">
<property name="resource" ref="ypportal-siparis-outputFile"></property>
<property name="ftpChannel" ref="ftpOutputChannel"></property>
</bean>
并且 ftpOutputChannel 使用 DefaultFtpSessionFactory 配置了 ftpClientFactory
<int:channel id="ftpOutputChannel"></int:channel>
<int-ftp:outbound-channel-adapter session-factory="ftpClientFactory" id="ftpOutbound" channel="ftpOutputChannel" remote-directory="inbox" auto-create-directory="true" temporary-remote-directory="tmp" >
</int-ftp:outbound-channel-adapter>
我想在第二步中添加重试逻辑,这将在与远程 ftp 主机的连接失败时重试/恢复。
使用 spring 集成 2.2.2 和 spring batch 2.1.19