我在使用org.apache.commons.net.ftp.FTPClient时遇到了一些问题。下面是我的代码:
if (!FTPReply.isPositiveCompletion(reply)) {
logger.debug("Fehler beim FTP verbindungsaufbau " + reply);
}
FileInputStream fis = new FileInputStream(ziel);
logger.info("....uploading...");
ftpClient.storeFile(cntKen + dateiEndung, fis);
fis.close();
logger.info("....Done!");到FTP服务器的连接是正常的,但当我尝试将文件上传到此FTP服务器时,我收到一条FTP response 421 received错误消息。使用ftpClient.storeFile(cntKen + dateiEndung, fis)线路。
同样的代码也适用于其他ftp服务器,所以我不确定,这是代码或ftp服务器本身的一些配置的问题。
有什么想法吗?
编辑:在我阅读更多信息的同时。当服务器同时只允许1个连接时,似乎会出现错误。也许lib建立了多个连接?
发布于 2018-02-16 15:48:39
解决方案非常简单。这个错误意味着,ftp服务器由于某些原因在连接后中断了您的连接。所以到ftp服务器的连接是有效的,但是在上传文件之前,连接是断开的。在这种情况下,因为连接和上传之间的ilde时间是5分钟。FTP服务器配置为在2分钟后断开空闲连接。如果你遇到同样的问题,断开连接可能还有其他一些原因。但实际上ftp连接已丢失,并且使用.storeFile (或ftp)不是响应无连接,而是421错误代码
解决方法有两种: 1.优化软件。检查ftp连接是否正常,然后关闭连接。在上传之前再次打开它。2.更改FTP-Settings以将空闲连接断开为更高的值
https://stackoverflow.com/questions/48803961
复制相似问题