Bom dia!
Estou com um problema que está me tirando o sono, o problema é o seguinte:
Preciso fazer a copia de um arquivo PDF de um servidor para outro, LINUX e estou utilizando a classe FTPClient para executar essa transferência.
Estou utilizando o código abaixo:
FTPClient ftp = new FTPClient();
ftp.connect( "servidor.com.br" );
ftp.login( "root", "123" );
FileOutputStream fos = new FileOutputStream(FacesUtil.getCurrentDirectory()+ File.separator +MySQLDAO.getNomeArquivo(pathPdf));
ftp.retrieveFile(pathPdf, fos);
HttpServletResponse res = (HttpServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();
res.setHeader("Content-Disposition","atachment; filename=arquivo.pdf");
res.setContentType("application/pdf");
String direcione = FacesUtil.getCurrentDirectory()+File.separator+MySQLDAO.getNomeArquivo(pathPdf);
try {
ServletOutputStream out = res.getOutputStream();
File file = new File(direcione);
out.write(fileToByte(file));
out.flush();
out.close();
} catch (IOException ex) {
ex.printStackTrace();
} catch (Exception e1) {
e1.printStackTrace();
}
FacesContext faces = FacesContext.getCurrentInstance();
faces.renderResponse();
faces.responseComplete();
limparCampos();
removerArquivo(pathPdf);
ftp.disconnect();
Acontece que o método retriveFile não está funcionando!
É criado o arquivo no diretório mas não é copiado o arquivo do servidor remoto...
O que pode ser???