我的FTPClient
代码工作正常,但唯一的问题是当我调用ftps.logout()
函数时,需要更长时间才能断开至少5-10分钟,然后执行下一行代码。
以下是我的代码。
try {
FTPSClient ftps = new FTPSClient("SSL");
ftps.connect(hostname, port);
returnCode = ftps.getReplyCode();
if (!FTPReply.isPositiveCompletion(returnCode)) {
throw new IOException("Could not connect");
}
boolean loggedIn = ftps.login(username, password);
if (!loggedIn) {
throw new IOException("Could not login");
}
((FTPSClient) ftps).execPBSZ(0);
((FTPSClient) ftps).execPROT("P");
ftps.enterLocalPassiveMode();
log("Connected and logged in.");
// code to read ftp file goes here .............
} catch (Exception e) {
log(e.getMessage());
}
finally{
if (ftps != null && ftps.isConnected()) {
ftps.logout(); // after this line execution to next line comes after 5 - 10 mins
log("Ftp Logged out");
ftps.disconnect();
log("ftp disconnected");
}
}
有人可以帮我解决出错的原因,为什么需要更长时间才能退出ftp
我正在使用FTPSClient
中的apache commons-net-3.1.jar
:
谢谢..