FTPS через SSL/TLS с использованием Apache Commons для загрузки файла не удается
Я пытаюсь реализовать загрузку файла FTP в Android, используя библиотеку Apache commons. Связь должна осуществляться через явную аутентификацию TLS. Я могу войти в систему, подключиться к серверу и вывести список файлов успешно, но когда я пытаюсь сохранить файл на сервере, он создает файл в целевой папке сервера с размером 0 и выбрасывает SSLException: ошибка записи, сломанный канал. Как это побороть? Ниже мой код:
FTPSClient ftpClient = new FTPSClient("TLS", false);
ftpClient.addProtocolCommandListener(new PrintCommandListener(new
KeyManagerFactory kmf = getInstance(KeyManagerFactory.getDefaultAlgorithm());
kmf.init(null, null);
KeyManager km = kmf.getKeyManagers()[0];
ftpClient.setKeyManager(km);
ftpClient.setBufferSize(1000);
ftpClient.setConnectTimeout(5000);
ftpClient.connect(InetAddress.getByName("server ip address"), 990);
// Set protection buffer size
ftpClient.execPBSZ(0);
// // Set data channel protection to private
ftpClient.execPROT("P");
ftpClient.login("username", "password");
ftpClient.changeWorkingDirectory("/");
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
ftpClient.enterLocalPassiveMode();
buffInp = new BufferedInputStream(new FileInputStream(file.getAbsolutePath()));
//throwing exception here
boolean status = ftpClient.storeFile( picture.getName(), buffInp );