Ответ FTP 421. Закрытое соединение с сервером

Я пишу код JAVA для перемещения FTP-местоположения с использованием Apache Commons Net FTPClient и получения вывода в файле Excel. код выполняется правильно в течение примерно 5 минут, но затем дает исключение IOException:

org.apache.commons.net.ftp.FTPConnectionClosedException: FTP response 421 received.  Server closed connection.

Я использую commons-net-3.0.1.jar. Я сделал несколько R & D и попытался:

setDefaultTimeout(6000); 
setConnectTimeout(3000);
setSoTimeout(3000);
enterLocalPassiveMode();

и отправив NOOP, но все равно получив ту же ошибку.

Все, что я пытаюсь сделать, - это пройти через каталог, и если файл найден, чем получить имя файла и дату обновления файла в excel else, если каталог найден, зайдите внутрь и сделайте, пока файл не будет найден снова.

Пожалуйста, помогите и спросите, требуется ли какая-либо другая информация. Я новичок в JAVA.

Ответ 1

Смотрите здесь: http://kb.globalscape.com/KnowledgebaseArticle10142.aspx

    Error 421 Service not available, closing control connection. 
    Error 421 User limit reached 
    Error 421 You are not authorized to make the connection 
    Error 421 Max connections reached 
    Error 421 Max connections exceeded 

Возможно, вы не используете повторно соединение, но используете новое соединение для каждого запроса, наводя сервер соединениями, пока оно не достигнет предела соединения. Попробуйте закрыть свои подключения или выполнить их.

Ответ 2

Для справок в будущем..

Если решение @fiffy не работает, возможно, попробуйте включить TLS (FTPS/Secure Connection), Мой сервер был настроен только на прием протокола FTPS, поэтому он отклонил мое незашифрованное соединение, поэтому включение TLS (FTPS) помогли мне решить проблему.

Примечание. - Эта ошибка FTP response 421 received очень заметна в Netbeans, так как она также встроена в java.