Boa tarde a todos…
Estou tentando utilizar a biblioteca commons-net-2.0 para transferencia de arquivos via ftp.
Consigo conectar, porem na transferencia do arquivo para o servidor, recebe a mensagem de ok mas quando consulto no servidor o arquivo nao esta.
Alguem pode me ajudar?!
Segue código que estou executando…
FTPClient ftp = new FTPClient();
try {
ftp.connect("www.meudominio.com.br");
//verifica se conectou com sucesso!
if( FTPReply.isPositiveCompletion( ftp.getReplyCode() ) ) {
if (ftp.login( "usuario", "senha" )) {
System.out.println("conectado ... ");
} else
System.out.println("nao conectado ... ");
} else {
//erro ao se conectar
ftp.disconnect();
System.out.println("Conexão recusada");
System.exit(1);
}
//para cada arquivo informado...
for( int i=0; i<arquivos.length; i++ ) {
//abre um stream com o arquivo a ser enviado
InputStream is = new FileInputStream( arquivos[i] );
//pega apenas o nome do arquivo
int idx = arquivos[i].lastIndexOf(File.separator);
if( idx >< 0 ) idx = 0;
else idx++;
nomeArquivo = arquivos[i].substring( idx, arquivos[i].length() );
//ajusta o tipo do arquivo a ser enviado
if( arquivos[i].endsWith(".txt") ) {
ftp.setFileType( FTPClient.ASCII_FILE_TYPE );
} else if( arquivos[i].endsWith(".jpg") ) {
ftp.setFileType( FTPClient.BINARY_FILE_TYPE );
} else {
ftp.setFileType( FTPClient.ASCII_FILE_TYPE );
}
System.out.println("Enviando arquivo "+nomeArquivo+"...");
// muda o diretorio corrente para /news
// ftp.changeWorkingDirectory("/public_html");
//faz o envio do arquivo
// ftp.storeFile(nomeArquivo, is );
if (ftp.storeUniqueFile(nomeArquivo, is))
System.out.println("transferencia ok");
else
System.out.println("nao transferiu");
is.close();
System.out.println("Arquivo "+nomeArquivo+" enviado com sucesso!");
}
ftp.disconnect();
System.out.println("Fim. Tchau!");
} catch( Exception e ) {
System.out.println("Ocorreu um erro: "+e);
System.exit(1);
}
Obrigado a todos.