Applet lässt sich nicht starten
-
Ach ja! Das hatte ich nicht bedacht...
Hmm, aber später soll das Applet ja auch nicht auf die Festplatte des Users zugreifen, sondern nur auf die Aufgaben.txt, die auf dem Server gespeichert ist. Lässt sich das nicht irgendwie machen?
-
snOOfy schrieb:
Ach ja! Das hatte ich nicht bedacht...
Hmm, aber später soll das Applet ja auch nicht auf die Festplatte des Users zugreifen, sondern nur auf die Aufgaben.txt, die auf dem Server gespeichert ist. Lässt sich das nicht irgendwie machen?
Doch, mit Servlets (auch serverseitige Applets genannt ).
Hier kommt dann wieder der Verweis auf java.sun.com und die Tutorial Section.
-
du meinst das hier?
http://java.sun.com/developer/onlineTraining/Servlets/Fundamentals/servlets.htmlMuss ich das wirklich alles lesen, nur um das Applet so umzubauen, dass es auf eine Datei zugreifen kann?
Und ich dachte schon, ich hätte das Projekt fertig und müsste nur einen kleinen Fehler behebe...
-
Na ja, mit fiele jetzt keine andere Java-Technologie ein, mit der man ein Frage-Antwort-Quiz Spiel machen könnte, wenn die Daten auf'm Server liegen. Höchstens JSP könntest du noch nehmen, das funktioniert im Prinzip wie PHP und ASP.
-
Wie groß ist denn der Aufwand, ein Applet zu einem Servlet umzuschreiben? Wenn es nicht so übermäßig schwierig ist, werde ich das wohl machen müssen...
-
snOOfy schrieb:
Wie groß ist denn der Aufwand, ein Applet zu einem Servlet umzuschreiben? Wenn es nicht so übermäßig schwierig ist, werde ich das wohl machen müssen...
Nicht sooo groß, wenn auch das Applet nicht übermäßig kompliziert ist und sich der Umfang eben in Grenzen hält. Du musst eigentlich nur die Grundstruktur anpassen (salopp gesagt).
-
GPC schrieb:
snOOfy schrieb:
Ach ja! Das hatte ich nicht bedacht...
Hmm, aber später soll das Applet ja auch nicht auf die Festplatte des Users zugreifen, sondern nur auf die Aufgaben.txt, die auf dem Server gespeichert ist. Lässt sich das nicht irgendwie machen?
Doch, mit Servlets (auch serverseitige Applets genannt ).
Hier kommt dann wieder der Verweis auf java.sun.com und die Tutorial Section.Höh??
Also wenn Du die Aufgaben.txt einfach nur vom Server lesen willst, geht das auch mit Applets problemlos!
Keine Ahnung auf was GPC hinauswill?!?
Du kannst natürlich nicht so ohne weiteres was auf dem Server speichern - also wieder was zurückschreiben (Highscores?) ist nicht so simpel. Vielleicht meint er das.
-
Also gleich Servlets zu verwenden, ist doch vielleicht ein bisschen übertrieben, zumal nicht gleich auf jedem Webserver ´nen Application Server läuft und das für Anfänger vielleicht auch nicht gleich zu empfehlen ist.
Wie gesagt, lesen geht auf dem Server ohne Probleme. Um Daten zu schreiben (so eine Textdatei z.B.) könntest du ja auch eine php-Seite(das unterstützen sicherlich mehr Webserver bzw. das ist auch auf Servern, auf denen man gemieteten webspace hat, eher verfügbar) schreiben, der du dann per POST oder GET (je nach Länge der Zeichenketten bei den einzelnen Aufrufen) die Daten übergeben kannst und die das ganze dann für dich auf dem Server speichert.
Ich habe mir mal eine Klasse für solche Http-Anfragen geschrieben, wenn du willst, kann ich dir die Klasse bzw. den Quellcode schicken.
-
Sgt. Nukem schrieb:
Also wenn Du die Aufgaben.txt einfach nur vom Server lesen willst, geht das auch mit Applets problemlos!
Keine Ahnung auf was GPC hinauswill?!?
Du kannst natürlich nicht so ohne weiteres was auf dem Server speichern - also wieder was zurückschreiben (Highscores?) ist nicht so simpel. Vielleicht meint er das.Oha, er will ja nur lesen, na dann tut's natürlich das Applet schon, ich war bis gerade eben der Meinung, er wolle auch schreiben, muss mich wohl verlesen haben.
-
Also das Applet soll in meiner Seite http://www.phynet.de in den php code eingebaut werden, so dass unter jedem Artikel Aufgaben kommen, mit denen man überprüfen kann, ob man den Artikel verstanden hat.
Wen es interessiert, wir haben unsere Domain und Webspace von all-incl:
http://www.all-incl.com/index.php?content=angebote_webpremium&partner=&domain=Pogo schrieb:
Ich habe mir mal eine Klasse für solche Http-Anfragen geschrieben, wenn du willst, kann ich dir die Klasse bzw. den Quellcode schicken.
Das wär nett Mal schauen, ob ich es verstehe...
-
Bei mir ist das gleiche Problem, dass meine Applets nicht gelesen werden sollen. Ich soll mittels Servlets eine Seite erschaffen, die eine Applet aufruft.
Code-Ausschnitt:
PrintWriter out = res.getWriter(); out .print("<HTML><HEAD><TITLE>Dokumentenliste für CIC</TITLE>" + "<link rel='stylesheet' type='text/css' href='../CIC/formate.css'></HEAD>" + "<BODY bgcolor=003F8B>" + "<table border='0' align='center'>" + "<div class='header'>Show Documentlist</div>" + "</table>" + "<div class='frame'>" + "<applet codebase='C:/Projekte/CIC/' code='HelloWorldApplet.class' width='200' height='100'></applet>" + "</div>" + "</Body></Html>"); }
Ich hab somit ja den absoluten Pfad angegeben, aber das Applet kann weder im IE noch im FF angeschaut werden. In beiden ist alles aktiviert, dass es eigentlich funktionieren müsste, aber ich bin mir auch gerade unsicher woran das liegt.
PS: Wundert euch nicht über die '-Zeichen, weil bei Servlets muss man das so schreiben, damit der Ausdruck, der in diesen Anführungszeichen steht, als String erkannt werden kann.
-
Ich hab es immernoch nicht hinbekommen
da ist das applet eingebaut. wie ihr feststellen könnt, funktioniert es nicht. die Aufgaben.txt ist im gleichen ordner.
den code für das applet habe ich hier:www.phynet.de/private/snOOfy/ExerciseApplet.java
Kann mir wer sagen, was ich ändern muss?
-
Anscheinend fehlt ihm eine anonyme Klasse, wahrscheinlich eine von deinen Action-Listenern. Hast du ALLE vom Compiler produzierten Class Dateien in das Verzeichniss gepackt?
-
nee, hatte ich nicht^^
aber jetzt habe ich das getan, und es funktioniert immer noch nicht.hier ist mal mein netbeans projekt mit den beiden .java dateien und den .class dateien. vielleicht kriegt das ja irgendwer hin, dass man das online starten kann:
-
Jo, seh's grad, jetzt kriegst du ne FilePermission Error: Hast du auch Schreib/Lese Zugriff auf die Datei Aufgaben.txt?
Bin noch beim Arbeiten, wenn ich heimkomme, schau ich's mir mal genauer an, sofern du's bis dahin noch nicht selber hingekriegt hast.
-
Hast du auch Schreib/Lese Zugriff auf die Datei Aufgaben.txt?
hmm, weiß nich... also ICH habe da schreib/lese zugriff drauf, ich hab sie ja da hinkopiert. aber woher weiß, ob das mein applet das auch hat?
wenn ich heimkomme, schau ich's mir mal genauer an
cool, das wär nett! ich glaube nich, dass ich das vorher noch hinkriege
-
Also hab's grad entpackt (mach doch bitte ein zip draus ), ne kurze HTML-Seite drumrumgebastetelt (codebase entfernt und Applet größer gemacht), in den Ordner mit den class Dateien reingelegt, dann noch die Aufgaben.txt in den selben Ordner reingepackt und funktioniert hat's. Hat die Datei gelesen, die Auswahlmöglichkeiten gebracht usw.
Kleiner Tipp am Rande: Lösch die JTextArea bei nem Klick auf Vorherige/Nächste mit jTextArea1.setText("");
-
Hier noch als Vervollständigung:
So muss es in dem Verzeichniss aussehen, in dem dein Applet liegt, hier liegt jetzt auch die HTML Seite und die Aufgaben.txt drin[b]Aufgaben.txt* [/b] ExerciseApplet$2.class* ExerciseApplet.class* CExercise.class* ExerciseApplet$3.class* [b]ExerciseApplet.html*[/b] ExerciseApplet$1.class* ExerciseApplet$4.class* TestApplet.class*
Und so hab ich deine HTML - Datei geschrieben:
<HTML> <HEAD> <TITLE>PhyNet</TITLE> </HEAD> <BODY> <H3><HR WIDTH="100%">Applet HTML Page<HR WIDTH="100%"></H3> <P> <APPLET code="ExerciseApplet.class" width=1024 height=768></APPLET> </P> <HR WIDTH="100%"><FONT SIZE=-1><I>Generated by NetBeans IDE</I></FONT> </BODY> </HTML>
-
Es geht immer noch nicht.
Der Ordner:
http://www.phynet.de/private/snOOfy/AppletOrdner.gif
Die html Datei ist genau so, wie du gesagt hast.Und bei mir funktioniert es trotzdem nicht:
www.phynet.de/Applet/ExerciseApplet.htmlWoran kann das nur liegen?
edit:
ok, es liegt am lese/schreibzugriff:Java Konsole schrieb:
java.security.AccessControlException: access denied (java.io.FilePermission Aufgaben.txt read)
Aber was kann man da machen?
-
Soweit komm ich gar nicht, ich krieg schon vorher ne Exception (sitz hier grad an nem anderen Rechner mit Java 1.4), du solltest mit target 1.4 kompilieren, sonst schauen alle die, die nicht deine Version des JDK haben, in dir Röhre.
Wenn das behoben ist, dann gehen wir die andere Exception an.