Cliente FTP - commons.net

2 respostas
S

Preciso implementar uma aplicação que monitora um ftp, buscando certos arquivos, então resolvi usar o pacote commons.net, tem inclusive um tutorial aqui no site o qual me baseie.
Mas ja travei logo no inicio, não consigo listar os arquivos e não entendi bem o pq. O servidor ftp é o proftpd, rodando em um linux.
A conexão vai bem, ele muda o diretorio como deveria mas não encontra os arquivos, sugestões?
Segue minha implementação de teste…
Muito obrigado.

FTPClient ftp = new FTPClient();
        try{
            ftp.connect(url, porta);
            if(FTPReply.isPositiveCompletion(ftp.getReplyCode())){
                ftp.login(usuario, senha);
                new GravaTXT("Conectado!!!", false);
                String status = ftp.getStatus();
                if(status != null)
                    new GravaTXT(status, false);
                else{
                    new GravaTXT("Usuario ou senha invalido!!!", false);
                    System.exit(1);
                }
            }
            else{
                //erro ao se conectar
                ftp.disconnect();
                new GravaTXT("Falha ao efetuar a conexão", false);
                System.exit(1);
            }
        } catch (SocketException ex) {
            new GravaTXT(ex.getMessage(), false);
        } catch (IOException ex) {
            new GravaTXT(ex.getMessage(), false);
        }

        String[] names = null;
        try {
            System.out.println(ftp.changeWorkingDirectory("/len"));
            names = ftp.listNames();
        } catch (IOException ex) {
            new GravaTXT(ex.getMessage(), false);
        }

        for(int i=0; i<names.length; i++)
            System.out.print(names[i]);

2 Respostas

Priuli

Eu tenho um projeto de utils que tem uma classe que facilita o uso do ftp da apache, talvez possa te ajudar:

http://code.google.com/p/opensutils-br4j/

Lá tem o svn vc pode baixar o codigo ou se quiser ver via browser neste link do google.code: http://opensutils-br4j.googlecode.com/svn/OpenSutils-Br4J/src/org/opensutils/io/ftp/FTPApacheCommonsNetImpl.java

S

Priuli:
Eu tenho um projeto de utils que tem uma classe que facilita o uso do ftp da apache, talvez possa te ajudar:

http://code.google.com/p/opensutils-br4j/

Lá tem o svn vc pode baixar o codigo ou se quiser ver via browser neste link do google.code: http://opensutils-br4j.googlecode.com/svn/OpenSutils-Br4J/src/org/opensutils/io/ftp/FTPApacheCommonsNetImpl.java


Muito obrigado, mas por hora consegui resolver, faltava a chamada desse metodo, enterLocalPassiveMode().
Seu eu me enrolar de novo vou tentar seu projeto.
Novamente, muito obrigado.

Criado 7 de abril de 2011
Ultima resposta 7 de abr. de 2011
Respostas 2
Participantes 2