Applet wird nicht angezeigt

Status
Nicht offen für weitere Antworten.

Lay-C

Aktives Mitglied
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...
 
Na wenn du aus der Sandbox ausbrechen willst muss dein jar signiert sein.
Ich verweise dich einfach mal an die FAQ für weitere Informationen.
 
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
 
Wahrscheinlich fehlt das archive-Attribut in der HTML-Datei.
Lass mal sehen, wie du das Applet eingebunden hast.
 
Code:
<applet code="Chatplatform.jar" width="640" height="480" alt="Java-Applet">
    <param name="TestText" value="SELFHTML">
  </applet>

so hab ichs eingebunden...
 
Richtig muss es so ausehen:
Code:
<applet archive="Chatplatform.jar" code="DeineAppletKlasse.class" width="640" height="480" alt="Bitte Java aktivieren!"> 
    <param name="TestText" value="SELFHTML"> 
</applet>
 
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...

Programm im Net

Eclipse Projekt im Zip Format

hab hier mal das erste zur Anschauung geschickt wies jetzt läuft und das Zweite um Fehler zu finden....
 
Damit man das Applet auch ausführen kann, muss es signiert sein. Daher erhalte ich eine AccessContollException, wenn ich auf den ersten Link klicke.
 
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)
 
Bei mir nicht.
L-ectron-X' Opera Java-Console hat gesagt.:
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.
 
ok ich weiß woran es lag... habe die html datei auf dem Server noch nicht verändert gehabt :bahnhof: :idea:
schau mal bitte obs jetzt funktioniert...
 
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

Meine Seite: http://www.ramschmarkt.de/zahlenspiel/formtest1.php

Könntest Du da mal nachsehen. Danke!


Gruß
Andreas
 
@ 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.
 
ok trotzdem Danke.. und wie heißts so schön aus Fehlern lernt man...
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben