# ftp login



## guarditan (13. Dez 2008)

Hallo Leute. Nach langer Suche und wenig Erfolg, frag ich jetzt einfach mal hier nach.

Ich würde gern auf meinen Webserver per ftp zugreifen. Klar gibt es bereits die Klassen FtpCLient und FTPClient. Bei ersten finde ich keine Infos drüber, zweitere kann ich irgendwie nicht importieren.

Also ich würde ich das gern selbst mit java.net implementieren. Das scheint soweit auch machbar mit dem Socketkonstrukt zu sein. Allerdings muss ich mich ja am Server per username und password authorisieren. Dafür bietet die Klasser aber scheinbar keine Methode an. Wie kann ich das machen ?


----------



## HoaX (13. Dez 2008)

ein socket ist nunmal ein socket und kennt kein ftp. wenn du wirklich selbst implementieren willst dann musst du dich um alles kümmern, auch um die authentifizierung.

welchen FtpClient hast du denn probiert? "FtpClient" ist nicht wirklich aussagekräftig. schau dir doch mal den von commons-net an: http://commons.apache.org/net/


----------



## guarditan (13. Dez 2008)

HoaX hat gesagt.:
			
		

> ein socket ist nunmal ein socket und kennt kein ftp. wenn du wirklich selbst implementieren willst dann musst du dich um alles kümmern, auch um die authentifizierung.



Das ist mir ja klar, aber ich finde nirgends informationen was der ftp erwartet, bzw. wie ich mich dort identifizieren muss.

Ich würde gern halt versuchen möglichst viel selbst zu implementieren, wenn es nicht zu schwer ist, da ich so am meißten lerne


----------



## Gelöschtes Mitglied 5909 (13. Dez 2008)

http://www.faqs.org/rfcs/rfc959.html

viel spaß

ich würde dir das empfehlen:

http://www.enterprisedt.com/products/edtftpj/overview.html


----------



## musiKk (13. Dez 2008)

Also ganz billig anmelden kann man sich mit einem URL-Objekt, das man mit ftp://user:password@ftpserver.com erstellt.


----------



## guarditan (15. Dez 2008)

musiKk hat gesagt.:
			
		

> Also ganz billig anmelden kann man sich mit einem URL-Objekt, das man mit ftp://user:password@ftpserver.com erstellt.



hm gut werd ich mal versuchen. Wenn das so einfach ginge, wäre das prima.

Also danke an euch beide. Ich werde mich dem Thema dann mal weiterhin widmen


----------



## Gast (27. Dez 2008)

Hallo,

ich verwende commons net 2.0 und habe hier ein Problem.
Ich verwende vsftpd - wenn ich mich local via lftp anmelde tut das 1a. aber wenn ich folgenden code verwende:

FtpClient ftpClient = new FtpClient();
            ftpClient.connect(textServerAdress.getText(), Integer.parseInt(textPort.getText()));
            ftpClient.login(textUsername.getText(), textPassword.getText());

erhalte ich "530 please login with user and pass".
Die Exception kommt direkt nachdem er den connect abgeschickt hat. Ich gehe also davon aus dass da noch mehr mitgeschickt wird als "blos" der connect Befehl.
Waere super wenn mir jemand helfen koennte :>

Viele Grüße,

oli


----------



## Gast (28. Dez 2008)

Hallo,

ich habe meine eigene Klasse verwendet (FtpClient extends FTPSClient...) weshalb die 530 Meldung kam.
Wenn ich jetzt allerdings den ganz normalen FTPClient verwende, erhalte ich beim connect() als return value "null".
Wenn ich dann den login() oder sonstige Befehle hinschicke, erhalte ich eine NullPointerException. Hilfe


----------



## Gast (28. Dez 2008)

Hat sich erledigt.
Ich weiß zwar nicht wieso er gemeckert hat, aber es lag wohl daran dass ich FTPClient abgeleitet habe (als FtpClient).
Die Klasse hat nichts gemacht - aber mit dem original FTPClient gehts nun.


----------



## Gast2 (28. Dez 2008)

Gast hat gesagt.:
			
		

> Hat sich erledigt.
> Ich weiß zwar nicht wieso er gemeckert hat, aber es lag wohl daran dass ich FTPClient abgeleitet habe (als FtpClient).
> Die Klasse hat nichts gemacht - aber mit dem original FTPClient gehts nun.



evt. in der abgleiteten Klasse den Konstruktor der Bais-Klasse aufrufen

hand, mogel


----------



## HoaX (28. Dez 2008)

wird doch implizit gemacht wenn er keinen anderen angibt


----------

