Probleme envoi client ftp... [resolu] - Java - Programmation
Marsh Posté le 15-09-2004 à 10:37:33
tu utilises quoi comme lib pour le ftp ?
c'est quoi ton "probleme" ?
Marsh Posté le 15-09-2004 à 11:16:02
en fait j'utilise une class qui est deja crée, qui gere la creation du socket la connexion, login, download... toutes les methodes qui permettent de gerer un ftp, moi ce que je fais c'est utiliser cette classe pour l'incorporrer a mon programme (pas besoin de creer ce qui existe deja)
je la met sur mon serveur ftp pour que tu vois
http://reptils.free.fr/forumhardwa [...] ction.java
donc j'ai compris en lisant cette class comment fonction en gros le serveur ftp, (envoi d'une commande du style "PWD" ou "STOR fich.txt" ), donc j'utilise un objet FtpConnection Con=new FtpConnection() pour faire realiser mes taches, cad me connecter, deconnecter, creer un dossier... mais je n'arrive pas a uploader avec sa methode upload
j'ai essayé en dure pour voir en faisant executeCommand("STOR"+" fich.txt" ); mais ca ne marche pas non plus...
Marsh Posté le 15-09-2004 à 12:16:46
neg'gwada a écrit : en fait j'utilise une class qui est deja crée, qui gere la creation du socket la connexion, login, download... toutes les methodes qui permettent de gerer un ftp, moi ce que je fais c'est utiliser cette classe pour l'incorporrer a mon programme (pas besoin de creer ce qui existe deja) |
j'avais bien compris, je te demandais *quelle* librairie tu utilisais.
neg'gwada a écrit : |
hmm.. connaissais pas..
neg'gwada a écrit : |
euh oui "ça ne marche pas", ça veut dire quoi !?
(... ...)
Marsh Posté le 15-09-2004 à 14:13:58
the real moins moins a écrit : |
je ne comprend pas , tu confirmes que ca ne marche pas ou bien tu veux que j'explicite ce qui ne marche pas?
Marsh Posté le 15-09-2004 à 15:20:19
PUTAIN MAIS FLINGUEZ LE LUI !
Marsh Posté le 15-09-2004 à 16:01:48
bon laisse tombé, je ne comprend pas ce que tu dis et ca ne sert à rien de t'énerver, si ca te fait chier de me repondre ben tu evites de repondre...
Marsh Posté le 15-09-2004 à 17:54:28
ça fait 4 posts que je te demande quel est le problème, elle est si complexe que ça la question
Marsh Posté le 15-09-2004 à 18:04:57
le monsieur -- avec sa coupe beatles il te demande
SAI QUOI QUI FONCTIONNE PAS EXACTEMENT ?
Il demande des explications claires et précises, des messages d'erreur, tu vois des trucs du style quoi
Marsh Posté le 15-09-2004 à 18:58:40
Si tu veux obtenir une réponse, tu devrais au moins joindre la classe que tu as écrite et qui fait appel à FtpConnection.java, et indiquer clairement ce qui se passe (ou ne se passe pas!) comme real-- et masklinn te le demandent.
On saurait au moins de quoi il retourne et on pourrait éventuellement tenter de reproduire le problème (qu'on ne connait tjs pas).
Marsh Posté le 15-09-2004 à 18:59:57
the real moins moins a écrit : |
ok désolé alors j'avais pas pigé, ce qui se passe exactement... ben rien il n'y a ni message d'erreur, d'exception, il ne se passe rien... . la methode Upload renvoi un booleen j'obtient false (l'envoi n'a pas ete effectué). Comme la journée je ne suis pas chez moi donc je n'ai pas encore peu chercher de nouveau, mais d'ici peu le temps que je m'y remette ce soir je regarde si vraiment il n'y a pas une erreur evidente ou cachée qui m'a echappée. Mais comme mes connaissances sont limitées pour l'instant, car ca fait deux mois que je me suis mis à java donc je n'arrive pas à decortiqué correctement la fonction Upload de la class qui est plus haut en lien.
Marsh Posté le 15-09-2004 à 19:02:33
sircam a écrit : Si tu veux obtenir une réponse, tu devrais au moins joindre la classe que tu as écrite et qui fait appel à FtpConnection.java, et indiquer clairement ce qui se passe (ou ne se passe pas!) comme real-- et masklinn te le demandent. |
ok je vais vous donner plus tard la partie de mon code qui concerne le Send. Mais pas trop de critiques svp sur l'optimisation du code, car je debute...(je code encore comme un cochon)
Marsh Posté le 15-09-2004 à 19:06:08
neg'gwada a écrit : ok je vais vous donner plus tard la partie de mon code qui concerne le Send. Mais pas trop de critiques svp sur l'optimisation du code, car je debute...(je code encore comme un cochon) |
Alors là ça va ch*er pour ta g***le ! Ici on ne supporte pas le code merdique ! Ca nous irrite les yeux. Tu seras obligé de le corriger point par point pour qu'il soit présentable avant même qu'on envisage d'aborder le fond de la question.
J'rigole, mais fais gaffe
Marsh Posté le 15-09-2004 à 21:51:59
voici mon code:
Code :
|
voila j'espere que c'est clair, si vous voyez un truc dites moi, j'utilise le class qui est en lien plus pour les operations liés au serveur et les import ....*; sont tous là.
Marsh Posté le 15-09-2004 à 22:37:24
houlà
... tu voudrais pas faire un prog de test tout simple qui ne fait qu'envoyer ton fichier, en command line et sans gui ?
Marsh Posté le 15-09-2004 à 22:46:10
ouais tu as raison je vais tester, faut dire que le foot m'a empéché de poursuivre
Marsh Posté le 15-09-2004 à 22:58:56
the real moins moins a écrit : ... tu voudrais pas faire un prog de test tout simple qui ne fait qu'envoyer ton fichier, en command line et sans gui ? |
+1
C'est infernal de se taper tout un code qui n'a rien à voir
Marsh Posté le 16-09-2004 à 01:03:43
bon j'ai fais le prog qui se connect tout simplement puis créé un dossier et puis fait un upload pour enfin se deconnecter
voici le prog:
la fonction attente fait une attente de x millisecondes
Code :
|
j'ai mis le flux de donné in et out et alors j'obtiens:
la connexion est lancée |
puis apres plus rien il s'arrete a la creation du fichier et ne fait pas l'envoi... et le processus est toujours actif, je ne sais pas qu'est ce que fait le programme
Marsh Posté le 16-09-2004 à 01:06:32
déjà, vire le ' de ton nom de fichier.
.. mais bon. je sais pas.. connais pas ta libraire.
essaie d'utilise commons-net, la classe FTPClient, voir si t'as plus de succes.
( http://jakarta.apache.org/commons/net/ )
Marsh Posté le 16-09-2004 à 11:53:13
et le class FtpBean qui est dispos sur le net vous en pensez quoi? http://www.geocities.com/SiliconVa [...] n/ftpbean/
Marsh Posté le 16-09-2004 à 12:21:08
neg'gwada a écrit : et le class FtpBean qui est dispos sur le net vous en pensez quoi? http://www.geocities.com/SiliconVa [...] n/ftpbean/ |
Dunno, mais celle proposée par real-- (jakarta, anciennement ORO) marche pas mal. Les seuls bugs sur lesquels je suis tombé concernaient le logout.
On l'utilise en production sur un système extrêmement important et ça donne satisfaction.
Marsh Posté le 16-09-2004 à 12:43:59
sircam >> tu pourrais jeter un oeil sur mon problème dans le topic blablatech@java alors stp?
Marsh Posté le 16-09-2004 à 13:27:40
the real moins moins a écrit : sircam >> tu pourrais jeter un oeil sur mon problème dans le topic blablatech@java alors stp? |
Il contient 1872 posts...
Marsh Posté le 16-09-2004 à 14:16:49
c'est à la fin
Marsh Posté le 16-09-2004 à 14:47:37
lol
la classe FTPClient je ne vais meme pas utiliser 1% de ce code, il va falloir que je fasse le tri dans ce vaste fichier.class, merci en tout cas pour le lien je vais tester tout ca...
Marsh Posté le 16-09-2004 à 15:03:56
sircam a écrit : Il contient 1872 posts... |
Marsh Posté le 17-09-2004 à 00:00:19
vous savez quoi , j'ai resolu mon probleme, j'ai honte.
en fait il ne se passait car pour l'envoi celon si on est en connexion active ou passive ben il envoi differement, et j'avais mal defini le mode d'envoi donc il ne faisait ni l'un ni l'autre...
merchi quand meme à vous les gars . Promis lorsque mo logiciel sera fini je vous le met en partage pour que vous puissiez critiquer
Marsh Posté le 18-09-2004 à 12:36:32
Parce que c'est toi, j'ai jeté un oeil sur le code que tu proposes et j'ai tenté de faire un simple upload sur mon compte free.fr.
Résultat tout à fait décevant.
Le transfert se réalise correctement, tant avec que sans mode passif, mais le programme bloque et se termine par un 'connection reset by peer'. Après ajout massif de debugging, il apparaît que ça bloque sur completePendingCommand.
Quelle déception.
Tu avais quoi plus précisemment avec ton pipe cassé ?
Marsh Posté le 18-09-2004 à 13:08:11
euuuuuuuuuuuuuh, par coeur je sais plus, et j'ai pas la machine sous la main là, je m'y remet apres le weekend... mais en gros ça uploadait +/-80ko (sur les 2-300) et puis ça partait en exception (une io je suppose) avec un message "..broken pipe..." (avant d'arriver au completePendingCommand je crois - à vrai dire je ne sais plus pourquoi j'avais appelé cette methode, sans doute pour essayer vu que ça ne marchait déjà pas).. plus de précision la semaine prochaine.
Marsh Posté le 18-09-2004 à 13:08:21
ReplyMarsh Posté le 18-09-2004 à 23:17:52
dites, vu que vous faites des truc sur le transfert ftp vous devez savoir ca, lorsqu'on fait un upload ou un download comment on fait pour avoir l'evolution du transfert, pour mettre sur un Jprogressbar? j'ai pensé à faire une requette pendant le transfert de la taille du fichier(toutes les 200 ms), mais je trouve que c'est un peu lourd comme methode. des solutions?
Marsh Posté le 19-09-2004 à 17:51:44
j'ai trouvé un truc qui permet de recuperer les infos en utlisant la commande "STAT", seulement je n'arrive pas à l'utiliser car comme le fichier est en train de transmettre le flux de donné, j'ai l'impression que le canal de connexion est OQP...
Marsh Posté le 19-09-2004 à 17:54:04
ben ça depend de la lib que tu utilises, ça doit en general fonctionner par callback ce genre de truc
Marsh Posté le 19-09-2004 à 19:00:45
ben en faite je n'ai pas cnangé de lib, j'utilise toujours FtpConnection.java, mais c'est quoi un callback?
Marsh Posté le 20-09-2004 à 19:19:41
je crois avoir compris comment faire pour avoir l'evolution de l'upload en fait lors de l'up ce qu'il se passe d'apres le code du transfert:
Code :
|
où BLOCK_SIZE vaut 4096. donc à priorie on stock des packets d'octets (4096) puis on envois donc dans la boucle while j'ai qu'a mettre un compteur et j'obtient achaque fois combien de paquets j'envois donc -> progressbar
Marsh Posté le 21-09-2004 à 11:09:54
tiens au fait moi j'ai plus mes problemes de pipe cassée. pas compris, mais j'ai eu d'autres problèmes réseau à la maison ces temps-ci, donc ...
.. par contre commons-net, niveau archi c'est pas la panacée .. pour avoir un listener sur mon upload ftp, j'ai du étendre la classe FTPClient et copier-coller une methode entière pour pouvoir appeler Util.copyStream avec un listener
Marsh Posté le 21-09-2004 à 12:13:20
heu comment dire... à force de faire des tests avec mon logiciel sur mon serveur ftp de free, ben je suis bannis... et ca fait maintenant plus de 24 heures
je ne peux me connecter à aucun ftp meme ceux de mes potes qui sont sur d'autres serveurs.
ca t'est pas encore arrivé the real moins moins?
Marsh Posté le 15-09-2004 à 00:06:48
chalut, je suis en train de faire un client ftp en ce moment (le truc que pas mal de debutants commence à faire pour se faire la main en programmation). Seulement j'ai un probleme... j'ai deja tout implementé (mon interface, mes actions...) sauf une seule chose, l'action d'envoi de fichier au serveur (upload), car la j'y arrive pas. est ce quelqu'un peut me dire comment faire? pourtant je suis bien connecté au serveur, j'arrive meme à créé un fichier sur le ftp...
deuxieme question, j'ai voulu regarder des trucs pour voir comment ca marche un peu le FTP et je suis tombé sur ce lien qui a l'air interessant -> http://www.securite.teamlog.fr/pub [...] index.html
mais je n'est pas compris la vrai diference entre le mode passif et actif (à part pour l'histoire du firewall et de flux entrant) est ce qu'il y a vraiment un interet d'utiliser l'un ou l'autre.
Merci d'avance
Message édité par neg'gwada le 17-09-2004 à 00:02:32
---------------
--- WinSplit Revolution ---