Applet in einer Jar und Textdatei ausserhalb

MiMi

Erfahrenes Mitglied
Hallo,

ich habe mein frischgebasteltes Applet in ein Jar Archiv gepackt, damit ich dieses signieren kann (ansonsten funktioniert die ganze Geschichte mit der Textdatei in einem Applet wohl nicht). Nun möchte ich auf eine Textdatei zugreifen die ausserhalb dieses Archivs liegt(wäre sie innerhalb, könnte ich sie nicht ändern). Das auslesen dieser Datei habe ich nun nach langem hin und her auch hinbekommen:
Java:
InputStream urlTest = getClass().getResourceAsStream("highscores.txt");
BufferedReader in = new BufferedReader(new InputStreamReader(urlTest));

Jedoch möchte ich nun auch in diese Datei die neuen Daten schreiben. Mittels:
Java:
BufferedWriter out = new BufferedWriter(new FileWriter("highscores.txt"));
funktioniert es leider nur ohne Jar-Archiv in Eclipse.
Die oben genutzte Methode "getResourceAsStream" kann ich hier ja nicht gebrauchen, da diese wohl nur zum einlesen ist.

Nutze ich getResource, um den Pfad zu erhalten, findet er die Datei dennoch nicht.

Wäre super wenn mir jemand helfen könnte :)
Danke im Vorraus
 
Zuletzt bearbeitet von einem Moderator:
Ohne es selbst ausprobiert zu haben, sage ich einfach mal, dass das nicht klappen wird. Ein Applet läuft auf dem Client-System und nicht auf dem Server. Prinzipiell hast du so also auch keine Server-Rechte für die Dateien, die darauf liegen, besonders die Schreibrechte, denn kein Webserver wird es zulassen, dass man auf ihm einfach Dateien ändern kann. Du müsstest du schon etwas zur Verfügung stellen, das dir dabei hilft, z.B. ein PHP-Skript, denn dieses wird serverseitig ausgeführt und kann somit auch auf die Dateien auf dem Server zugreifen und diese manipulieren (sofern entsprechende Rechte gesetzt).

Ich lass mich natürlich korrigieren, da ich mit Applets noch nicht viel gemacht habe und somit auch über entsprechend magere Kenntnisse verfüge, aber das sollte so stimmen, was ich geschrieben hab.
 
Danke erstmal für die Antwort.
Das heißt ich kann mir das ganze mit dem signieren des Applets sparen? Und via ein Get oder Post schicke ich dann die Daten an eine PHP Seite, diese verarbeitet dann die Daten und schreibt sie in die Textdatei.
Hm, und das alles nur weil ich meine Highscores in meinem Java Applet speichern wollte, womit ich nicht auf die Datenbank zugreifen konnte :(
 
Du musst es trotzdem signieren, da sonst auch keine Socket Verbindungen möglich sind. Und selbst dann sind nur Verbindungen möglich zu dem Server, von welchem die Jar-Datei heruntergeladen wurden.
Generell sollte dann auch der Zugriff direkt auf die Datenbank möglich sein, was natürlich nicht zu empfehlen ist, da jeder die Zugangsdaten aus dem Applet auslesen könnte.
 
Du musst es trotzdem signieren, da sonst auch keine Socket Verbindungen möglich sind. Und selbst dann sind nur Verbindungen möglich zu dem Server, von welchem die Jar-Datei heruntergeladen wurden.
Generell sollte dann auch der Zugriff direkt auf die Datenbank möglich sein, was natürlich nicht zu empfehlen ist, da jeder die Zugangsdaten aus dem Applet auslesen könnte.

Ist es nicht so, dass das Applet generell auf seinen eigenen Server zugreifen darf, und mit Signatur dann auf alles andere?
 
Danke auf jeden Fall habs jetzt so gelöst, dass die Daten vom Applet an ein PHP script geschickt werden und von dort in die Datenbank gespeichert.
Ein ganz schöner Aufwand, nur weil ich nicht direkt vom Applet auf die Datenbank zugreifen darf (dank Hoster). Aber wieder was gelernt ;)
 

Neue Beiträge

Zurück