Bonjour à tous,
Dans le cadre du développement d'une application, j'utilise la librairie EDTFTPJ-PRO pour effectuer mes transferts de fichier...
Enfin... J'aimerai y arriver
Alors je vous expose mon problème.
Sur le serveur tourne Fillezilla (Serveur FTP).
Avec le client FilleZilla, j'arrive à me connecter sur ce serveur de n'importe quel poste (interne ou externe) au réseau. J'utilise pour ce faire du FTP SSL.
Je peux me ballader dans les répertoires, télécharger des fichiers, en envoyer d'autres etc...
Lorsque je me connecte avec mon application en interne idem...
Mais ca bloque quand je me connecte d'un poste extérieur. Or j'ai besoin que ca marche aussi... Je ne sais pas du tout d'où cela provient...
Peut-être que j'oublie un truc dans la config pour que ca soit possible de l'extérieur mais bon... J'ai tout essayé et je ne vois pas.
En fait quand je dis que ca ne marche pas c'est pas tout à fait vrai.
La connexion se fait, je peux me ballader dans les répertoires à l'aide de la commande chdir mais dés que je souhaite lister le contenu d'un répertoire (qui contient quelques fichiers) pour les télécharger... Je me mange un time out alors que ca marche nickel en interne !!...
Et une fois connecté :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 mlFtp = new SSLFTPClient(); mlFtp.setConfigFlags(SSLFTPClient.ConfigFlags.DISABLE_SSL_CLOSURE); mlFtp.setParserLocale(Locale.US); mlFtp.setRemoteHost(FTP_ADDRESS); mlFtp.setRemotePort(FTP_PORT); mlFtp.setValidateServer(false); mlFtp.connect(); mlFtp.auth(SSLFTPClient.AUTH_TLS); mlFtp.login(USER, PASS); mlFtp.setConnectMode(FTPConnectMode.PASV); mlFtp.setType(FTPTransferType.BINARY);
Pour info... Evidemment que j'ai vérifié le compte sur FilleZilla Server et que j'ai les droits de LIST sur le dossier racine... Même au niveau des droits windows sur le répertoire, "Tout le monde" a accés au contenu dans tous les sens (suppression, ajout etc...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 String[] listing = null; System.out.println("\t\tListing :"); System.out.println("\t\tPath (Ici on est à la racine du compte) : " + mlFtp.pwd()); listing = mlFtp.dir(); // On récupère sous forme de chaine la liste des répertoires et fichiers // ET C'EST LA QUE CA BLOQUE... // Idem avec la fonction DIRDETAILS... // Je deviens fou :) for (int i = 0; i < listing.length; i++) { System.out.println("\t\t\t --> " + listing[i]); // On affiche les noms. } // Et si je vire le bout de code qui me bloque avant, j'arrive à rentrer dans le dossier DOSSIER et PAF... Ca rebloque au listing du contenu de ce dossier. mlFtp.chdir("./DOSSIER"); System.out.println("\t\tPath (Ici on est dans le répertoire DOSSIER) : " + mlFtp.pwd()); listing = mlFtp.dir(); // On récupère sous forme de chaine la liste des répertoires et fichiers for (int i = 0; i < listing.length; i++) { System.out.println("\t\t\t --> " + listing[i]); } mlFtp.chdir("../"); // Et on remonte à la racine.
Donc je comprends vraiment pas...
Ce qui me tue le plus c'est que ca marche nickel en local... Ca marche nickel avec le client FilleZilla... et avec l'appli... Bin RIEN !!...
Ca fait 2 jours j'en peux plus !!
Merci de me dire tout ce qu'il vous passe par la tête (en rapport avec mon problème bien sur) et qui pourrait m'aider à résoudre ce truc de fou...
Edit :
Pour info, l'API de cette librairie : http://www.enterprisedt.com/products...api/index.html
Et j'utilise un objet de type SSLFTPClient.
Merci d'avance !!
++
CC
Partager