Relative Pfadangabe in JEditorPane zur lokalen Datei

Wambui

Aktives Mitglied
Hallo zusammen,

ich versuche gerade mit dem JEditorPane und einer lokalen HTML-Datei ein About-Fenster und Help-Fenster zu erstellen. Ich finde momentan keinen Zugang zu dieser Datei, die ich als "about.html" in dem Ordner "resources" abgelegt habe. "resources" liegt auf derselben Ebene wie "src" ebenfalls.
Wenn ich hinter "file://" den absoluten Pfad auf meinem Linux-System zur HTML-Datei angebe, dann funktioniert der Code. Mir fehlt die richtige relative Pfadangabe. Die Klasse JAbout.java liegt im Package "com.example.calculator" und dieses wiederum direkt unterhalb von "src".

Grüße

Wambui

Code:
package com.example.calculator;

import java.awt.BorderLayout;
import java.awt.Toolkit;
import java.io.File;
import java.io.IOException;
import java.net.URL;

import javax.swing.JButton;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;


public class JAbout extends JEditorPane implements HyperlinkListener  {
	
	public JAbout(String url) {
		setEditable(false);
		addHyperlinkListener(this);
		
		try {
			setPage(new URL(url));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		JFrame f = new JFrame("Über uns...");
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setSize(600, 400);
		f.setIconImage(Toolkit.getDefaultToolkit().getImage(JAbout.class.getResource("/com/example/calculator/gui/resources/images16x16/currency_euro_yellow.png")));
		JButton okay = new JButton("Ok");
		f.getContentPane().add(new JScrollPane(new JAbout("file://resources/about.html")), BorderLayout.CENTER);
		f.getContentPane().add(okay, BorderLayout.SOUTH);
		f.setVisible(true);
	}

	@Override
	public void hyperlinkUpdate(HyperlinkEvent event) {
		HyperlinkEvent.EventType type = event.getEventType();
		
		if (type == HyperlinkEvent.EventType.ACTIVATED) {
			try {
				setPage(event.getURL());
			} catch (IOException e) {
				JOptionPane.showMessageDialog( this,
		                "Kann dem Link nicht folgen: "
		                  + event.getURL().toExternalForm(),
		                "Ladefehler",
		                JOptionPane.ERROR_MESSAGE );
			}
		}
	}

}

Der Stack trace hierzu redet von einem unbekannten Host:
java.net.UnknownHostException: resources
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at sun.net.ftp.impl.FtpClient.doConnect(FtpClient.java:958)
at sun.net.ftp.impl.FtpClient.tryConnect(FtpClient.java:918)
at sun.net.ftp.impl.FtpClient.connect(FtpClient.java:1013)
at sun.net.ftp.impl.FtpClient.connect(FtpClient.java:999)
at sun.net.www.protocol.ftp.FtpURLConnection.connect(FtpURLConnection.java:294)
at sun.net.www.protocol.ftp.FtpURLConnection.getInputStream(FtpURLConnection.java:393)
at javax.swing.JEditorPane.getStream(JEditorPane.java:769)
at javax.swing.JEditorPane.setPage(JEditorPane.java:433)
at com.example.calculator.JAbout.<init>(JAbout.java:31)
at com.example.calculator.JAbout.main(JAbout.java:46)
 

VfL_Freak

Top Contributor
Moin,

habe jetzt nur kurz drübergeschaut - zumal nicht klar wird, in welcher Zeile die Exception auftritt ....

Aber dies hier
Java:
new JAbout("file://resources/about.html")
sieht als Pfad seeehr seltsam aus :(

Gruß
Klaus
 

Wambui

Aktives Mitglied
Okay, ich habe entgegen "Java SE 8 Standard-Bibliothek" (Ausgabe 2014) Seite 834, zweiter Absatz statt "file://", wie empfohlen, jetzt "file:" versucht, dann klappt es.

Grüße
Wambui
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
Tippster Input/Output relative Pfadangaben Allgemeine Java-Themen 6
M Relative Anzahl an verschachtelten Forschleifen Allgemeine Java-Themen 8
Slevin getResource & relative Pfade Allgemeine Java-Themen 1
F Relative Pfade und Arbeitsverzeichnisse Allgemeine Java-Themen 38
M Ant relative Pfade im Classpath vom Jar-Task Allgemeine Java-Themen 2
E relative Adresse bei FileInputStream Allgemeine Java-Themen 2
A Relative Mausposition ohne Event Allgemeine Java-Themen 2
V Relative Pfade in Eclipse RCP Plugin Allgemeine Java-Themen 14
B windows: relative pfade in java-programm Allgemeine Java-Themen 7
A exe4j und relative Pfade Allgemeine Java-Themen 2
K Input/Output Pfadangabe in .jar Datei Allgemeine Java-Themen 2
E Pfadangabe auf Bilddateien außerhalb der .jar Allgemeine Java-Themen 7
E File.mkdir Probleme mit rel. Pfadangabe?! Allgemeine Java-Themen 2
G Pfadangabe mit getResource Allgemeine Java-Themen 7
I Pfadangabe zu Files Allgemeine Java-Themen 2
K Pfadangabe validieren mit regexp Allgemeine Java-Themen 20
F Pfadangabe bei Processbuilder Allgemeine Java-Themen 4
M Pfadangabe Allgemeine Java-Themen 2
A Auswahl eines JEditorPane das Sich in einem JScrollPanel Befindet Allgemeine Java-Themen 2
A jEditorPane Html Datei öffnen (code) Allgemeine Java-Themen 3
C JEditorPane langsam großes HTML Allgemeine Java-Themen 8
T TextArea, JTextPane, JEditorPane Allgemeine Java-Themen 11
StrikeTom Swing JEditorPane automatischer Umbruch Allgemeine Java-Themen 4
W CSS in JEditorPane Allgemeine Java-Themen 32
I Teilweise falsche Darstellung jap. Zeichen im JEditorPane mit RTFEditorKit aus RTF-Datei Allgemeine Java-Themen 5
S Swing mit JEditorPane per HTML auf Bilder in JAR zugreifen. Allgemeine Java-Themen 3
E JTextArea / JEditorPane + Text formatieren Allgemeine Java-Themen 3
T JavaScript aus HTML im JEditorPane ausführen? Allgemeine Java-Themen 5
X Ausgabe auf JEditorPane Allgemeine Java-Themen 5
Iron Monkey JEditorPane mit Refresh von Meta Allgemeine Java-Themen 7
S ImageTag in JEditorPane Allgemeine Java-Themen 2
R JTextPane (JEditorPane) ignoriert JScrollPane Allgemeine Java-Themen 5
U JEditorPane & copy'n'paste Allgemeine Java-Themen 34
O breite des inhalts eines jeditorpane Allgemeine Java-Themen 2
G JEditorPane Zeilenumbruch Allgemeine Java-Themen 1
G JEditorPane will nicht scrollen! Allgemeine Java-Themen 2
D Suchfunktion innerhalb Jeditorpane Allgemeine Java-Themen 6
G JEditorPane: angezeigter Text Allgemeine Java-Themen 21
D Jeditorpane + einlesen ausserhalb des Jar Allgemeine Java-Themen 4
T JApplet - JEditorPane gegen JPanel tauschen Allgemeine Java-Themen 2
T JEditorPane oder JTextPane Applets und Flash anzeigen Allgemeine Java-Themen 7
T JEditorPane aktualisieren Allgemeine Java-Themen 14
V Hyperlink mit JEditorPane Allgemeine Java-Themen 40
V Hyperlink hervorheben mit Hilfe von der Klasse JEditorPane Allgemeine Java-Themen 7
S JEditorPane / JScrollPane und nach unten scrollen Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben