URL File in Applet

Schaaaf

Bekanntes Mitglied
Hallo,

ich habe mein Applet fehlerfrei mit Eclipse ausführen können. Nach Einbindung in ein HTML Dokument und anschließendem Ausführen kommt diese Fehlermeldung :

java.lang.NullPointerException

Habe mir die Stelle im Code rausgesucht :

Java:
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));

Der Aufruf im Code ist wie folgt:

Java:
d.fromURL(MyClass.class.getResource("/Meine_Daten/test.txt"));

Woran liegt das? Bzw. wie und was kann ich da evtl. überprüfen, um den Fehler zu finden?

Danke schon einmal.
 
Zuletzt bearbeitet von einem Moderator:
S

SlaterB

Gast
für ein Applet ist es ja an sich ungewöhnlich, auf die Festplatte zuzugreifen,
ist dir das bekannt, hast du Security-Ausnahmen oder was immer möglich ist?

in deinem Fall wird die URL wohl null sein,
wo liegt das Verzeichnis Meine_Daten relativ zu MyClass.class auf der Festplatte,
bezogen auf das HTML-Dokument? sind packages beteiligt?

kannst du testweise die Datei MyClass.class selber als URL referenzieren?

---
ich habe selber gerade ein Dummy-Applet in Eclipse ausprobiert, da geht auch normales File,
klappt das bei dir in Eclipse, in HTML?
mit File könntest du leichter auch Verzeichnisse erfassen, alle enthaltenen Dateien anschauen usw.,
da findest du eher heraus, wohin dich ein relativer Pfad führt
(falls du selber daran arbeitest und nicht nur fragst 'habe Programm kopiert, und weiter?' ;) )

Java:
package test;

import java.applet.Applet;
import java.io.File;
import java.io.IOException;

public class DrawingLines  extends Applet {
    public void init()     {
        File f = new File("test/DrawingLines.class");
        try   {
            System.out.println("f: " + f.exists() + ", " + f.getCanonicalPath());
        }   catch (IOException e)   {
            e.printStackTrace();
        }
    }
}
 

Schaaaf

Bekanntes Mitglied
für ein Applet ist es ja an sich ungewöhnlich, auf die Festplatte zuzugreifen,
ist dir das bekannt, hast du Security-Ausnahmen oder was immer möglich ist?

Nein, das ist mir nicht bekannt.

wo liegt das Verzeichnis Meine_Daten relativ zu MyClass.class auf der Festplatte,
bezogen auf das HTML-Dokument? sind packages beteiligt?

Das Verzeichnis Meine_Daten liegt in demselben Ordner wie die MyClass.class. Dort liegt auch das HTML Dokument. Also, ich habe alles was ich an Klassen, JARS, HTML usw. entwickelt habe in einem Ordner.

kannst du testweise die Datei MyClass.class selber als URL referenzieren?

Wie sollte ich das können? Weiß nicht genau, wie?

Ich werde sonst mal versuchen, das auf Files umzustellen anstatt BufferReader.
 
S

SlaterB

Gast
funktioniert getResource("Meine_Daten/test.txt") ohne / am Anfang?

> Wie sollte ich das können? Weiß nicht genau, wie?
offensichtlich getResource("MyClass.class")

> Nein, das ist mir nicht bekannt.
Essentials, Part 1, Lesson 6: File Access and Permissions

Granting Applets Permission

If you tried to run the applet example, you undoubtedly saw errors when you clicked the Click Me button. This is because the Java 2 Platform security does not permit an applet to write to and read from files without explicit permission.

An applet has no access to local system resources unless it is specifically granted the access. So for the FileUIAppl program to read from text.txt and write to text.txt, the applet has to be given the appropriate read or write access permission for each file.

Access permission is granted with a policy file, and appletviewer is launched with the policy file to be used for the applet being viewed.
frag mich aber dann bitte nicht nach der 'policy file' usw., alles in Lehrbüchern, Internet zu finden
(abgesehen davon dass ich es nicht weiß ;) )
 

Schaaaf

Bekanntes Mitglied
funktioniert getResource("Meine_Daten/test.txt") ohne / am Anfang?

Nein, ohne "/" funktioniert es nicht.

Mit dem BufferedReader. Ich muss dazu sagen, dass ich an einem Projekt weitergearbeitet habe und das mit dem BufferedReader vom Vorgänger ist. Bei ihm gab es da keine Probleme.
 
Zuletzt bearbeitet:
S

SlaterB

Gast
BufferedReader sollte keine Rolle spielen,
es geht um das Auffinden der Datei, ist das URL-Objekt, der Parameter der Methode anscheinend, null oder nicht,

File kann als Alternative besser funktionieren,
 

Schaaaf

Bekanntes Mitglied
Vlt. stehe ich auf dem Schlauch, aber wenn url null ist, dann würde das doch schon in der Entwicklungsumgebung (hier: Eclipse) angezeigt werden oder sehe ich das falsch?
 
S

SlaterB

Gast
dass es in Eclipse funktioniert, in HTML nicht hast du ja am Anfang schon festgestellt und ich akzeptiert/ berücksichtigt,
aber nun gut, etwas ausführlicher:

Eclipse != HTML, andere Umgebung usw., das wissen wir beide,
und url ist in HTML null, das hat mit BufferedReader nichts zu tun, sondern nur damit ob und wie die Datei gefunden wird
 

Schaaaf

Bekanntes Mitglied
okay. das habe ich verstanden.

Ich versuche nun also eine alternative Möglichkeit zu entwickeln, um den Pfad zu erhalten:

Java:
File f = new File("./Meine_Daten/test.txt");
String pfad = f.getCanonicalPath();

Und wie rufe ich jetzt

Java:
d.fromURL(???);

auf?

Mit
Java:
d.fromURL(pfad)
??

Das hieße, ich müsste fromURL umschreiben zu :

Java:
public void fromURL(String url) {
 try {
  BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
  fromBufferedReader(reader);
 }
  catch (IOException e) {
  e.printStackTrace();
 }
}

Aber dabei treten ja bei "InputStreamReader(url.openStream())" Probleme auf... Wie kann ich das lösen?
 
Zuletzt bearbeitet:

Schaaaf

Bekanntes Mitglied
Okay, habe jetzt ne Möglichkeit gefunden, den String "pfad" in ne URL umzuwandeln. Gibt gleiches Ergebnis wie vorher getRessource.

Jetzt habe ich wieder alles neu eingebunden in die HTML. Allerdings läuft das Applet und läuft, aber macht nix. Also nur das JAVA load Logo. Keine Fehlermeldung oder so...
 
S

SlaterB

Gast
bringt wieder zum Standardpunkt Umgebung herstellen,
mache zunächst nichts brandgefährliches sondern initialisiere das Applet mit einfachen Standardbefehlen,
siehst du System.out.pintln()-Ausgaben in irgendeiner Java-Konsole? ansonsten musst du sie im Applet selber anzeigen,
JTextArea oder so, gar nicht so leicht das zu bauen, eine Aufgabe für sich,

du brauchst eine Umgebung in der du Dinge untersuchen, Fehler loggen kannst,

gefährliche Aktionen solltest du in der Inititalisierung unterlassen und stattdessen in den Listener eines Buttons "Test" stecken oder vergleichbares,

teste zunächst mit etwas bekannten wie
Java:
Object x = null;
x.toString();
sollte NullPointerException geben, mit try catch(Throwable t) abfragen, Exception loggen,
außerdem kann zwischen jeder Zeile eine Ausgabe mit Status/ Inhalt von Objekten usw. erfolgen,

wenn nicht alles klappt dann Umgebung noch nicht gut,
ansonsten kannst du nun das aktuelle Problem angehen,
URL-Abfrage oder File oder was auch immer, logge wieder Exceptions bzw. Throwable und/ oder jede Zeile,
welche Information erhälst du? oder auch dann letztlich 'macht nix.'? theoretisch immer denkbar bei blockierenden Aufrufen,
sollte hier aber nicht der Fall sein
 

Schaaaf

Bekanntes Mitglied
Also,

ich habe mit einem HTML Editor mir mal die HTML Seite anzeigen lassen. Läuft fehlerfrei. Starte ich sie aber mit IE stockt die Anwendung. Könnte es am älteren IE liegen?
 
S

SlaterB

Gast
das ließe sich doch einerseits recht schnell testen, vielleicht nicht durch Installation eines neuen IE, aber zumindest Firefox oder sonstwas,
anderseits kann ich persönlich das nicht wirklich beantworten,

ich ändere gleich noch das Titel des Themas, vielleicht schaut auch wer anders rein

----

ganz allgemein könnte ein HTML Editor genau wie Eclipse eine 'andere Umgebung' im Vergleich zum realen HTML sein,
was dort ist, besonders im Umgang mit Dateisystem usw., muss nicht allgemeingültig sein,
 

L-ectron-X

Gesperrter Benutzer
Ich glaube nicht, dass es am Browser liegt, weil die (unter Windows) inzwischen mit dem gleichen Java-Plugin/JRE laufen.
Ohne Code kann man schwer was sagen. Aber wenn du versuchst, mit einem Applet auf die lokale Verzeichnisebene zuzugreifen, sollte eine AccessControlException geworfen werden, die die Ausführung des Applets aus Sicherheitsgründen nicht zulässt.
Da hilft dann nur noch signieren, oder die Textdatei, auf die du zugreifen willst per getCodeBase() laden.
Aber ohne Code lässt sich da schwer mehr sagen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T File runterladen mit meinem Applet? Allgemeine Java-Themen 4
W Jar-File Start nur über Terminal Allgemeine Java-Themen 13
R 11 GB File lesen ohne zu extrahieren Filedaten Bereich für Bereich adressieren dann mit Multi-Thread id die DB importieren Allgemeine Java-Themen 3
D Read JSON File Problem Allgemeine Java-Themen 9
S Umstellung von File auf Path - Probleme mit Stream Allgemeine Java-Themen 5
C jar File mehrfach aufrufen (als Windows Dienst) Allgemeine Java-Themen 5
N File Path mit Variablen angeben Allgemeine Java-Themen 1
izoards Zugriff auf gemeinsame Ressource (CSV-File) Allgemeine Java-Themen 3
S Class File Editor -> Source not found Allgemeine Java-Themen 4
F jar File ausführen Allgemeine Java-Themen 14
M File Binary Representation Allgemeine Java-Themen 1
N jar File auf Mac mit Doppelklick starten Allgemeine Java-Themen 5
O Input/Output java.io.File beenden Allgemeine Java-Themen 5
G File not found - nach dem Kompilieren Allgemeine Java-Themen 6
T Jar File zu exe... Allgemeine Java-Themen 3
M Foreign Memory API / Memory-Mapped File Allgemeine Java-Themen 0
R Delete files before creating new from temp using Java file method Allgemeine Java-Themen 1
S File lesen und schreiben Java 6 Allgemeine Java-Themen 2
T String-Manipulation beim Ablauf in Eclipse und als JAR-File Allgemeine Java-Themen 8
F Input/Output FileNotFoundException, obwohl File existiert Allgemeine Java-Themen 5
G Excel File öffnen, in Zelle schreiben, abspeichern Allgemeine Java-Themen 6
L JAR-File auf Ilias (LMS) laufen lassen Allgemeine Java-Themen 0
ralfb1105 Classpath Directory fuer Properties File Allgemeine Java-Themen 2
L File beim Kopieren in einen anderen Ordner umbenennen Allgemeine Java-Themen 6
J File in Package erstellen & lesen mit Programmstart in externe Projekt Allgemeine Java-Themen 3
I File ausführen und mein Programm bearbeiten lassen Allgemeine Java-Themen 11
A File lesen Codierung Charset Allgemeine Java-Themen 5
J .java-Dateitext Compile zur Laufzeit ohne File Allgemeine Java-Themen 15
M Key-File im selben Ordner speichern? Allgemeine Java-Themen 18
I TrueZip add file to archive Allgemeine Java-Themen 10
T Probleme mit dem Pfad zum Propertie file Allgemeine Java-Themen 7
J ftp - delete file ohne appache Allgemeine Java-Themen 8
X Klassen File-Klasse wird als Directory markiert Allgemeine Java-Themen 8
T ImageIO.read -> Can`t read input file Allgemeine Java-Themen 11
L Applet Problem "security: Trusted libraries list file not found" ? Allgemeine Java-Themen 7
C Swing File[] als klickbare links in irgendeinem Swing Element Allgemeine Java-Themen 3
H Kennt sich jemand mit Eclipse und dem Thema Jar-File aus ? Allgemeine Java-Themen 6
H Laden einer (Resourcendatei) aus einem Jar-File Allgemeine Java-Themen 17
C Authentifizierung mit java.nio.file? Allgemeine Java-Themen 5
L CSV File lesen, in ArrayList speichern und ausgeben Allgemeine Java-Themen 3
M xlsx File auslesen Exception occured Allgemeine Java-Themen 13
offi Drag and Drop mehrerer File aus Explorer in JTable Allgemeine Java-Themen 1
G Java/LibGDX File Loading Exception Allgemeine Java-Themen 2
Cromewell JavaFX FXML-File lädt unter Ubuntu nicht Allgemeine Java-Themen 7
D Java Anwendung mit dll File Allgemeine Java-Themen 5
AssELAss Log4j Logging Ausgabe für jede Klasse in seperates File Allgemeine Java-Themen 2
thet1983 Input/Output read properties file from classpath Allgemeine Java-Themen 3
J Umwandeln von URL zu File und danach kopieren geht nicht Allgemeine Java-Themen 1
J Properties file ändern Allgemeine Java-Themen 12
S Executable Jar File startet nicht unter Windows 10 Allgemeine Java-Themen 3
B Objekte anhand von Properties file Allgemeine Java-Themen 41
Dechasa Input/Output Write into File Allgemeine Java-Themen 2
N Maven ObjectMapper Error wenn das File gespeichert wird Allgemeine Java-Themen 0
H Security Manager (IIOException: Can't read input file!) Allgemeine Java-Themen 2
H File.listFiles() funktioniert nicht... Allgemeine Java-Themen 10
C Input/Output Problem bei Datei verschiebung mit File.move und Paths.get() Allgemeine Java-Themen 26
X Zeile unter einer bestimmen Zeile hinzufügen(File) Allgemeine Java-Themen 1
F Open source file übersetzen Phython -> Java Allgemeine Java-Themen 4
C file.delete() funktioniert bei zweiten aufruf nicht mehr Allgemeine Java-Themen 3
M Desktop jar File icon Ändern? Allgemeine Java-Themen 14
O Sax-Parser ließt XML-File doppelt Allgemeine Java-Themen 1
J Java Software Compare Files und Neue File erstellen Allgemeine Java-Themen 0
Thallius Custom File Chooser Allgemeine Java-Themen 1
C .jar File lässt sich nur über Konsole öffnen Allgemeine Java-Themen 1
J Java Download Filedownload File.getFileName Allgemeine Java-Themen 3
R Java .class-File-Konstrunkt mit Programm visualisieren Allgemeine Java-Themen 18
G SecurityManager/Policy-File/Reflection Allgemeine Java-Themen 0
M pdf File bzw. ausgefüllte pdf Formulare drucken Allgemeine Java-Themen 2
S Input/Output File Not Found FileReader Allgemeine Java-Themen 6
Thallius Serialisiertes File kann auf anderem Rechner nicht geladen werden Allgemeine Java-Themen 12
P Java Dynamic Web Project -> config File Allgemeine Java-Themen 1
S runnable jar file in Verbindung mit itext Allgemeine Java-Themen 3
D Variablen java.io.File zum vergleichen abspeichern Allgemeine Java-Themen 1
M File IO Klasse ... wie einbinden Allgemeine Java-Themen 6
O Freies Tool zum Jar-File obfuscaten gesucht! Allgemeine Java-Themen 5
F File.listFiles ohne .sort Allgemeine Java-Themen 6
B XML File JAXB Allgemeine Java-Themen 0
S Platzverbrauch, File oder String Allgemeine Java-Themen 14
J Runnable jar-File: Fehlermeldung Allgemeine Java-Themen 2
P Kurze Frage: aus einer File die Zeilenanzahl auslesen Allgemeine Java-Themen 9
K Gepacktes Jar-File gibt beim Doppelklick eine Exception aus Allgemeine Java-Themen 4
P java.nio.file unter Java 6 verwenden Allgemeine Java-Themen 4
A TXT File einlesen unterschiedliche Zeilenlänge Allgemeine Java-Themen 9
B Finde letztes veränderte File Allgemeine Java-Themen 4
E Zip-File entpacken: unterschiedlicher Zeitaufwand bei unterschiedlicher Puffergröße Allgemeine Java-Themen 2
Guybrush Threepwood File.canWrite() und UAC Allgemeine Java-Themen 7
N Input/Output Mit Windows 7 erzeugtes zip-File in Java 7 öffnen Allgemeine Java-Themen 5
B Garbage Collection Logfile: Binary File Allgemeine Java-Themen 2
H XML-File mit Java erzeugt Frage Allgemeine Java-Themen 10
V C-Header Datei aus .java File herstellen Allgemeine Java-Themen 10
D File mit Inhalt kopieren und dieses File dann neu erstellen ? Allgemeine Java-Themen 4
T @NotBlank verwendet nicht message aus .property-File Allgemeine Java-Themen 4
G Jar-File soll eignen *.jar Namen ausgeben Allgemeine Java-Themen 10
S Jar-File startet nicht über doppelklick Allgemeine Java-Themen 2
P ganze Zeilen in einem File mit .replace() ändern. Allgemeine Java-Themen 10
S Datei in File-Objekt mit UTF-8 einlesen Allgemeine Java-Themen 2
P Aus einem File Zeilen auslesen. Allgemeine Java-Themen 15
V ProcessBuilder exe file Allgemeine Java-Themen 3
L Variablen IO Exception weil File angeblich nicht exisitert Allgemeine Java-Themen 10
M File einlesen während es beschrieben wird.. Allgemeine Java-Themen 6

Ähnliche Java Themen

Neue Themen


Oben