首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过spring集成的tls认证通过ftp下载文件

如何通过spring集成的tls认证通过ftp下载文件
EN

Stack Overflow用户
提问于 2016-11-21 22:13:11
回答 1查看 510关注 0票数 0

当文件通过TLS认证时,我无法从ftp服务器下载该文件。我已经使用了TLS握手轮询启动的DefaultFtpsSessionFactory会话"ERROR期间握手发生“。

虽然我可以通过普通的java类使用apache.common.net的FTPSClient下载文件。

我的xml配置如下:-

代码语言:javascript
复制
<bean id="ftpClientFactory"
        class="org.springframework.integration.ftp.session.DefaultFtpsSessionFactory">
        <property name="host" value="52.172.153.35"/>
        <property name="port" value="21"/>
        <property name="username" value=""/>
        <property name="password" value=""/>
        <property name="clientMode" value="2"/>
        <property name="bufferSize" value="100000"/>

代码语言:javascript
复制
<int-ftp:inbound-channel-adapter id="plannedFtpChannel" 
        session-factory="ftpClientFactory" filename-pattern="*.xls" local-filter="plannedFilter" auto-startup="true"
        auto-create-local-directory="true" delete-remote-files="false" remote-directory="/planned" local-directory="/DataFiles/planned" >
        <int:poller fixed-delay="10000">
        </int:poller>
</int-ftp:inbound-channel-adapter>

我收到的错误如下:-

taskScheduler-6,收到EOFException:错误taskScheduler-6,处理异常: javax.net.ssl.SSLHandshakeException:远程主机在握手期间关闭连接%%无效: Session-4,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 taskScheduler-6,发送TLSv1.2警报:致命,描述= handshake_failure

taskScheduler-2,读取: TLSv1.2应用程序数据,解密后长度= 160填充明文: len = 160 0000: D8 BE B6 80 50 63 4A A1 EA 00 DA A8 97 03 9D 39 TLS 0010: 34 35 30 20 54 4C 53 20 73 65 73 73 69 6F 6E 20 450 ....PcJ........9会话0020: 6F 66 20 64 61 74 61 20 63 6F 6E 6E 65 63 74 69 of data connecti 0030: 6F 6E 20 68 61 73 20 6E 6F 7420 72 65 73 75 6D on not resum 0040: 65 64 20 672 F20 74 68 65 20 73 65 73 73 69 6F ED或sessio 0050: 6E 20 64 6F 65 73 20 6E 6F 74 20 6D 61 74 63 68 n不匹配0060: 20 74 68 65 20 63 6F 6E 746F 6F 6C 20 63 6F 6E控制control 0070: 6E 65 63 74 69 6F 6E 0D 0A 4A BA 0F 0F 95 88 44连接..J.....D 0080: 8E B4 90 D0 02 B1 1C DC 78 E1 76 C1 ed BA 2F 82 .......x.v...0090: 3A 19 0B FA F2 09 61 6C FB 06 06 06 :.....al........taskScheduler-2,收到EOFException:忽略taskScheduler-2,调用closeInternal(false) taskScheduler-2,再次关闭调用;状态=5

在这里,就我搜索过的内容而言,需要启用会话重用。但是,不能这样做!任何建议。

EN

回答 1

Stack Overflow用户

发布于 2016-11-22 19:40:12

这里我们还必须重写DefaultFtpssessionFactory的getSession()和createClient(),以实现定制的FTPSClient。!它在这个配置下工作得很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40722232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档