Java FTP

moemaster

Erfahrenes Mitglied
Moin moin,
ich versuche nun schon mehrere Tage verzweifelt Dateien auf einen FTP-Server zu transferieren - allerdings über einen Proxy. Ohne Proxy kein Problem. Aber sobald's hinter einen Proxy soll geht's nicht. Ich nutze die commons-net-Library. Ich habe schon sämtliche 'System.getProperties().put("http/ftp.proxy[...]' ausprobiert und zusätzlich noch mit SocketAddress rumgespielt - ohne Erfolg. Ich wäre sehr dankbar für Tipps, wenn möglich mit Codeschnippsel.
Vielen Dank im Vorraus
Moe
 
So vielleicht:

Code:
System.setProperty("proxyHost", "proxy.tutorials.de");
System.setProperty("proxyPort", "8080");
 
Sorry, aber wie ich schon sagte: diese System.getProperties-Geschichte habe ich bereits in allen Variationen ausprobiert.
 
Moin,

habe gerade mal geschaut und in meinem Projekt ziemlich zentral Folgendes gefunden:

Java:
java.util.Properties prop = System.getProperties();
prop.put("proxySet", "true");
prop.put("http.proxyHost", "aaa.bbb.ccc.ddd");
prop.put("http.proxyPort", "8080");

Vlt. hilft das ja weiter :)

Gruß
Klaus
 
Oh man...tut mir leid, aber bitte LEST, was ich geschrieben habe!

Das habe ich alles schon ausprobiert und zwar ohne Erfolg!
Code:
                System.getProperties().put("ftp.proxySet", true); 
                System.getProperties().put("ftp.proxyHost", "*******"); 
                System.getProperties().put("ftp.proxyPort", ****); 
                System.getProperties().put("ftp.proxyUser", "*******"); 
                System.getProperties().put("ftp.proxyPassword", "*******"); 
                
                SocketAddress addr = new InetSocketAddress("***********", ****); 
                Proxy proxy = new Proxy(Proxy.Type.SOCKS, addr); 
                Socket socket = new Socket(proxy); 
                InetSocketAddress dest = new InetSocketAddress("ftp.******.net", ****); 
                socket.connect(dest); 
                
                
                System.getProperties().put("socksProxyPort", "****"); 
                System.getProperties().put("socksProxyHost", "*******"); 
                
                System.getProperties().put("ftp.proxySet", "true"); 
                System.getProperties().put("ftp.proxyHost", "********"); 
                System.getProperties().put("ftp.proxyPort", "****"); 

                System.getProperties().put("http.proxySet", true); 
                System.getProperties().put("http.proxyHost", "*******"); 
                System.getProperties().put("http.proxyPort", ****); 
                System.getProperties().put("http.proxyUser", "*******"); 
                System.getProperties().put("http.proxyPassword", "*******");

Alles tolle Vorschläge, die man nach 2 Minuten googlen bekommt. Aber wie anfangs schon erwähnt: SO gehts in meinem Fall NICHT!
 
Oh man...tut mir leid, aber bitte LEST, was ich geschrieben habe!
Das habe ich alles schon ausprobiert und zwar ohne Erfolg!
Alles tolle Vorschläge, die man nach 2 Minuten googlen bekommt. Aber wie anfangs schon erwähnt: SO gehts in meinem Fall NICHT!

Hmm, würde mich offengestanden ein wundern, weil es ja, wie Du auch schreibst, die überall beschriebene Vorgehensweise ist ....
Mal dumm gefragt: hast Du alle Einstellungen aus Deinem letzte Post auf einmal gesetzt oder nacheinander?
Sicher, dass nicht irgendwo ein dummer kleiner Schreibfehler (ggf. auch Groß-/Kleinschreibung) vorlag?
Hast Du ggf. mal einen anderen FTP-Client ausprobiert?
Ich arbeite hier mit edtFTPj (http://www.linux-magazin.de/NEWS/EdtFTPj-2.0.0-Java-Bibliothek-fuer-FTP-Clients)

Gruß
Klaus
 
Hmm, würde mich offengestanden ein wundern, weil es ja, wie Du auch schreibst, die überall beschriebene Vorgehensweise ist ....
Nicht ganz;) In mehreren Foren haben Leute ein Problem mit FTP+Proxy und überall werden diese Ratschläge gegeben, die aber im Falle von commons-net anscheinend nicht greifen. Deshalb habe ich das ja auch von Anfang an ausgeschlossen und gehofft, dass hier jemand damit Erfahrungen gemacht, und das Problem gelöst hat. Aber danke für den Link, ich werd's mir mal ansehen.

//EDIT:
Ich habe mir einmal den Link angesehen. Der Proxy-Support ist wohl nur gegen Bezahlung erhältlich. Und ich gebe sicherlich keine 499$ für eine Java-Library aus :D
http://www.enterprisedt.com/products/edtftpj/choose.html
 
Zuletzt bearbeitet:
Hallo,

hast du schon mal versucht?
Code:
System.setProperty("http.proxyHost", "myProxyServer.com");
System.setProperty("http.proxyPort", "80");
URL url=new URL("http://someserver/somepage");
URLConnection uc = url.openConnection ();
String encoded = new String
      (Base64.base64Encode(new String("username:password").getBytes()));
uc.setRequestProperty("Proxy-Authorization", "Basic " + encoded);
uc.connect();

Gruß

Sascha
 
Zurück