passive net ftpclient descargar commons archivo java ftp ftp-client apache-commons-net

java - net - spring boot ftp



segunda llamada a storeFileStream en FTPClient devuelve null (1)

Después de cargar el archivo, debo llamar:

client.completePendingCommand();

Estoy usando el FTPClient common-net de apache para subir archivos.
Estoy usando el método storeFileStream.
Esto funciona bien para la primera llamada, pero en la segunda llamada devuelve null y .getReplyStrings() devuelve "200 PORT command successful"!
Mi código es (que se llama como un método en un bucle para cada archivo):

FileInputStream fis = null; File LF=new File(localFilePath); InputStream is = new FileInputStream(LF); for(String DP:(remoteBasepath+"/"+remoteFilePath).split("/")){ if(!client.changeWorkingDirectory(DP)){ client.makeDirectory(DP); client.changeWorkingDirectory(DP); } } for(String line:client.getReplyStrings()){ System.out.println(line); } OutputStream os = client.storeFileStream(LF.getName()); byte[] buffer = new byte[1024]; int len; System.out.println("start"); long RBUN=0L; for(String line:client.getReplyStrings()){ System.out.println(line); } while ((len = is.read(buffer)) != -1){ os.write(buffer, 0, len); os.flush(); RBUN+=len; CFPRGS.setValue(Math.round((RBUN*100/LF.length()))); } for(String line:client.getReplyStrings()){ System.out.println(line); } is.close(); os.close();

¿Cuál es el problema?