0 kb arquivo criado quando o FTP é feito em java

Estou tentando enviar um arquivo por FTP para uma máquina remota. Abaixo está o meu código: -

FTPClient ftpClient = new FTPClient(); 
ftpClient.connect("home.abc.com"); 
ftpClient.login("remote", "guesst12"); 
int replyCode = ftpClient.getReplyCode(); 
ftpClient.changeWorkingDirectory("share")) 
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
InputStream input = new FileInputStream(new File("H:/testFile.txt"));
OutputStream out =  ftpClient.storeFileStream("testFile.txt");
Util.copyStream(input, out);
out.close();
input.close();
ftpClient.completePendingCommand()
ftpClient.logout();
ftpClient.disconnect();

Quando executo esse trecho de código, o código é executado sem problemas, mas na máquina remota, quando verifico o arquivo, o arquivo está sendo criado, mas sem arquivo de conteúdo (OKB). Estou faltando algo no código.

[Update]: Tentei com o seguinte código para armazenar arquivos: -

if(ftpClient.storeFile("testCopy.txt", input)) {
    System.out.println("File Stored Successfully");
}
System.out.println(ftpClient.getReplyString());

Agora o código de resposta que recebi é: -451 Failure writing to local file. O que isso significa

Obrigad

questionAnswers(4)

yourAnswerToTheQuestion