IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Client FTP en Java


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 29
    Par défaut Client FTP en Java
    Bonjour,

    J'écris un client FTP en Java à partir de l'API FTPConnection. J'ai créé la méthode ls qui exécute la commande "LIST" sur le serveur FTP (TYPSoft). Cette méthode peut prendre en argument le chemin d'un répertoire. Dans ce cas, la méthode exécute la commande "LIST "+cheminDuRepertoire. Mais le serveur ne me retourne que la description de ce répertoire :

    drw-rw-rw- 1 ftp ftp 0 May 22 13:58 DL

    au lieu de lister son contenu. Je ne sais pas si le problème vient du code Java ou de la commande en elle-même. Pour ce qui est de la commande, j'ai vérifié sur le Net et je ne pense pas qu'il puisse y avoir une erreur, c'est plutôt trivial. Le chemin est passé en absolu, mais ça m'étonnerait que l'erreur vienne de là.

    Avant de commencer à poster du code, puisqu'il y en a quand même pas mal, je voudrais savoir si quelqu'un a déjà entendu parler de ce genre de problème.

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Ton serveur ftp est peut-être protégé contre le listage des répertoires.

    As-tu essayé ta commande directement dans une console pour voir ce que te répondait le serveur?

    Sinon, tu as déjà un client FTP bien fait et libre qui existe: va voir du côté de l'API commons-net de Jakarta: inutile de réinventer la roue quand on peut s'en passer
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre averti
    Inscrit en
    Août 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 29
    Par défaut
    Je vais tester la commande comme tu me le conseilles.

    Sinon, je suis obligé de réaliser ce client, il s'agit d'une demande de mon tuteur de stage. :-p

  4. #4
    Membre averti
    Inscrit en
    Août 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 29
    Par défaut
    Bon, j'ai essayé en ligne de commande, et le problème vient du serveur (TYPSoft 1.11). Il ne permet pas de lister un répertoire entré en argument de la commande LIST (ou ls). Par contre, LIST seule fonctionne correctement.

    Je crois que ce sujet peut être déplacé vers un autre forum.

  5. #5
    Membre averti
    Inscrit en
    Août 2006
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 29
    Par défaut
    J'ai une nouvelle question !

    Maintenant, je me creuse la tête pour trouver un moyen de tester, toujours en Java et pour le protocole FTP, si un chemin donné mène vers un répertoire ou non (en gros tester l'existence d'un répertoire à partir de son chemin). Attention, il doit s'agir d'un répertoire uniquement, si le chemin mène à un fichier, le résultat doit être false.

    Avez-vous une idée ?

    J'ai déjà essayé de récupérer des informations sur le chemin avec LIST (et voir si l'entête est "d"), mais bien sûr, s'il s'agit d'un répertoire, c'est son contenu qui est listé ! -_-'

  6. #6
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Tu te déplaces un niveau en dessous et tu effectues un LIST.

    Là, si le nom recherché n'apparaît pas dans la liste, false

    Si le nom existe, tu regardes le début de la ligne:
    "drw-rw-rw- ..."

    Si ta ligne commence par un d, c'est un répertoire
    Sinon, c'est un fichier

    Exremple: si tu veux tester si /toto/titi est un répertoire, tu effectues ton "LIST" dans le répertoire /toto, et tu regardes la ligne correspondant à titi
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

Discussions similaires

  1. Client FTP en Java
    Par farid754 dans le forum Entrée/Sortie
    Réponses: 5
    Dernier message: 21/06/2011, 00h51
  2. Serveur / Client FTP Java
    Par Benj' dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 02/03/2010, 15h13
  3. Client FTP JAVA
    Par jyms2006 dans le forum Entrée/Sortie
    Réponses: 8
    Dernier message: 16/10/2008, 14h14
  4. Java Client FTP
    Par ®om dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 04/09/2006, 10h17
  5. [Débutant(e)] cherche client FTP en java
    Par javac*.java dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 02/02/2006, 11h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo