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.
ICh habe jetzt alle .class dateien und die .java und die java.policy.applet datei in den selben Ordner auf meinem Server geladen, allerdings komm inder Javakonsole folgender Fehler, wenn die Seite in die das Applet eingebunden ist geöffnet wird:
Code:
java.security.AccessControlException: access denied (java.io.FilePermission data.dat read)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkRead(Unknown Source)
at java.io.RandomAccessFile.<init>(Unknown Source)
at java.io.RandomAccessFile.<init>(Unknown Source)
at Chatplatform.init(Chatplatform.java:49)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
in Zeile 49 der Chatplatform Klasse steht:
Code:
readwrite.datei= new RandomAccessFile("data.dat", "rw");
readwrite ist ebenfalls eine Klasse...
kann mir jemand sagen wo der Fehler liegt, ich habe auch alle Schreib und lesezugriffe auf die data.dat zugelassen...
jetzt hab ich das Applet signiert und jetzt zeigt mir die Konsole:
Code:
Laden: Klasse Chatplatform.jar nicht gefunden
java.lang.ClassNotFoundException: Chatplatform.jar
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: C:\Dokumente und Einstellungen\Dominik\Eigene Dateien\hOMEPAGE\HTML-Übungen\JAVA Übung\Chatplatform\jar.class (Das System kann den angegebenen Pfad nicht finden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
at sun.applet.AppletClassLoader.getBytes(Unknown Source)
at sun.applet.AppletClassLoader.access$100(Unknown Source)
at sun.applet.AppletClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 10 more
Laden: Klasse Chatplatform.jar nicht gefunden
java.lang.ClassNotFoundException: Chatplatform.jar
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: C:\Dokumente und Einstellungen\Dominik\Eigene Dateien\hOMEPAGE\HTML-Übungen\JAVA Übung\Chatplatform\jar.class (Das System kann den angegebenen Pfad nicht finden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
at sun.applet.AppletClassLoader.getBytes(Unknown Source)
at sun.applet.AppletClassLoader.access$100(Unknown Source)
at sun.applet.AppletClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 10 more
Laden: Klasse Chatplatform.jar nicht gefunden
java.lang.ClassNotFoundException: Chatplatform.jar
at sun.applet.AppletClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.applet.AppletClassLoader.loadCode(Unknown Source)
at sun.applet.AppletPanel.createApplet(Unknown Source)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(Unknown Source)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.io.FileNotFoundException: C:\Dokumente und Einstellungen\Dominik\Eigene Dateien\hOMEPAGE\HTML-Übungen\JAVA Übung\Chatplatform\jar.class (Das System kann den angegebenen Pfad nicht finden)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at java.io.FileInputStream.<init>(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)
at sun.applet.AppletClassLoader.getBytes(Unknown Source)
at sun.applet.AppletClassLoader.access$100(Unknown Source)
at sun.applet.AppletClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 10 more
jetzt ließt es zwar die Datei aber so wie wenn man sie im Editor anschaut, d.h. mit Vierecken zwischen den Buchstaben und an der Stelle von Leerzeichen und Zeilenumbrüchen...
Es ist signiert... also die jar ist signiert.. bei mir kommt die Frage ob ich das applet ausführen will weil es von Lay-C signiert ist...
außerdem kommt noch der Fehler jetzt wieder....
Code:
java.security.AccessControlException: access denied (java.io.FilePermission data.dat read)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkRead(Unknown Source)
at java.io.RandomAccessFile.<init>(Unknown Source)
at java.io.RandomAccessFile.<init>(Unknown Source)
at Chatplatform.init(Chatplatform.java:50)
at sun.applet.AppletPanel.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
java.security.AccessControlException: access denied (java.io.FilePermission data.dat read)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkRead(Unknown Source)
at java.io.RandomAccessFile.<init>(Unknown Source)
at java.io.RandomAccessFile.<init>(Unknown Source)
at Chatplatform.init(Chatplatform.java:50)
at com.opera.AppletPanel.runHandlerThread(AppletPanel.java:445)
at com.opera.AppletPanel.run(AppletPanel.java:341)
at java.lang.Thread.run(Unknown Source)
Du musst schon die signierte Version auf den Server laden.
Sobald du deinen Code veränderst, neu kompilierst und eine neue Jar-Datei erzeugst, muss diese wieder signiert werden.
Also, die Frage, ob ich's annehmen will, kommt bei mir auch. Mach da jetzt auch "mal mit", hab ähnliche Probleme.
Was ich nicht verstehe: Er behauptet ja, die Signierung sei ungültig (invalid). Obwohl beim Signieren mit jarsigner geschrieben wird, sie sei 6 Monate gültig.
Wie mache ich es, dass diese Meldung nicht mehr kommt
@ Lay-C: Ja. Geht.
Wie du beschrieben hast wird der eingegebene Text durch Quadrate getrennt wieder ausgegeben.
Nur bezweifle ich, dass das so funktioeren wird, wie du das bisher gelöst hast. Man kann nicht auf diese Weise auf den Server schreiben und da eine Datei ablegen bzw. modifizieren.
Ein Chat funktioniert mit einem Server und vielen Clients, nicht mit einer Datei die lokal auf meiner Kiste abgelegt wird, denn so machst du es im Moment.
Eine Datei kannst du z.B. per FTP auf einen Server schreiben, aber wie gesagt, das ist für diesen Zweck die falsche Lösung.