Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Problem mit dem schreiben von Datein auf einem Server
Ich möchte eine Datei schreiben können, die auf einem Server liegt (mit nem Applet auf dem Server). Die Datei kann ich ohne Probleme lesen aber der gibt folgende Fehlermeldung beim schreiben:
Code:
java.net.UnknownServiceException: protocol doesn't support output
at java.net.URLConnection.getOutputStream(URLConnection.java:785)
at main.LogIn.AddUser(LogIn.java:199)
at main.LogIn.actionPerformed(LogIn.java:158)
at java.awt.Button.processActionEvent(Button.java:388)
at java.awt.Button.processEvent(Button.java:356)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Stell dir vor einer analysiert deinen Applet Code verändert ihn und fängt
dann an wie wild auf deinem Server herumzufuhrwerken; das liegt mit
Sicherheit nicht unbedingt in deinem Interesse.
Du kannst einzig und allein dein Applet eine Socket-Verbindung zu
einem Server-Programm aufbauen lassen, das dann diese
Datei schreibt.
Nur so bleibt es in der Verantwortung des Servers dort
Dateien zu verändern/löschen/erzeugen.
Ich hab es selbst noch nicht probiert, aber wenn dein Server PHP überstützt, dann kannst du dein Applet mit einem PHP Skript kommunizieren lassen, welches dann deine Daten für dich schreibt. Such mal hier im Forum oder bei Google danach.
meinte nicht, das es auf dem Server läuft, sondern das ich die signierte Jar auf den Server spiele und dann
das Applet auf meinem Client ausführe kommt keine Fehlermeldung.
Der Code scheint also OK, vielleicht liegts auch daran:
Also: Ich hab jetzt mal mit dem org.apache.common.net.ftp package mein Programm umgeschrieben. Das Lesen geht auch ohne Probleme, doch obwohl ich auf meinem (noch) localem FTP-Server dem User, mit dem ich auf den FTP connecte erlaub hab alles mit den Datein die in dem Pfad liegen zu machen (Lesen, Schreiben, Hinzufügen, Löschen), gibt der FTPClient nur null als OutputStream wieder!
Hier der Code:
Code:
FTPClient ftp = new FTPClient();
ftp.connect(Host-IP);
ftp.login(Username, Userpassword);
String file = Datei-Pfad;
//Lesen der Datei
ftp.deleteFile(file); //<--Die Zeile kann weggelassen werden, das Ergebniss ist das gleiche
OutputStream os = ftp.appendFileStream(file);
OutputStreamWriter osw = new OutputStreamWriter(os); //<---Für diese Zeile bekomm ich eine NullPointerEception
BufferedWriter bw = new BufferedWriter(osw);
//Schreiben der oben elgelesenden Informationen und der neuen Inforationen
ftp.logout();
P.S.: Weiß nicht wie ich das mit "ftp.irgendwas" hinbekommen, ohne dass ein Link entsteht.