当前位置: 首页 > news >正文

FTPClient报“Connection refused”的另一种情况

         使用Apache的commons-net包构建了一个FTP服务器,并使用包里的FTPClient远程连接FTP服务器。

        使用过程中,其中一个客户端应用程序,遇到了listFiles不返回,retrieveFileStream后,后续请求命令无效等一系列问题。第一个问题,将ftp协议设为被动模式即可,即调用enterLocalPassiveMode方法;第二个问题,需要在调用该方法返回数据流并关闭流后,调用completePendingCommand,确保文件读取动作结束后,其它命令可用。问题二可能在不同的ftp服务器上表现不一致,曾有过非commons-net构建的FTP服务器不需要调用completePendingCommand也能够继续与FTP服务器保持交互的实践。

        另外一个客户端应用程序能够正常登录FTP服务器,但只要调度listFiles就会返回"Connection refused"报错,调度list等其它命令会返回各种状态码,很不稳定。遍试以上多种处理方法,该问题仍无法解决。仔细分析两个客户端程序的Jar包依赖后发现,可以正常工作的客户端的jar包版本为3.8.0,而无法正常工作的jar包版本为3.6。服务器端的jar包版本也是3.6。统一替换为3.8.0版后,所有问题均被修复。

        目前看,未来,当遇到类似FTPClient不明所以的问题时,可考虑jar包版本的差异问题,作为一个可行的解决方案。


http://www.mrgr.cn/news/18797.html

相关文章:

  • 【NLP自然语言处理】文本处理的基本方法
  • 装WebVideoCreator记录
  • SBOM在国防军工领域的应用前景分析
  • 向沐神学习笔记:GPT,GPT-2,GPT-3 论文精读【论文精读】GPT部分
  • 鸿蒙-设置Rerefsh的下拉距离
  • python-第三方库-[yarl、yaml]
  • 太狠了:华为的卫星通信能免费使用了
  • 环保专包二级资质续期时要避免的常见错误
  • ESP32无线WiFi芯片模组,设备物联网连接通信,产品智能化交互升级
  • 场外个股期权为什么那么火?收益翻倍不是梦!
  • 电商数据整合新篇章:京东商品详情API返回值应用实践
  • 全能型AI vs.专业型AI:未来趋势与市场潜力探讨
  • Kafka【六】Linux下安装Kafka集群
  • springboot、flowable 生成图片发布到Docker乱码问题
  • AOP和注解的配合使用(封装通用日志处理类)
  • 团建活动如何分组?
  • LearnOpenGL学习笔记
  • 探索电子翻书在展厅的应用,如何进一步优化信息展示与接收?
  • 高校为什么需要AIGC大数据实验室?
  • 青远生态为云南林业规划院定制开发的自然保护地规划智能编制系统顺利通过验收