Hallo,
ich erstelle mit JDOM ein XML File mit einem DocTyp.
Ich habe mit dem Einlesen durch den SaxBuilder probleme.
Fehlermeldung:
org.jdom.input.JDOMParseException: Error on line 2 of document file:/D:/Daten/Joachim/Hauptstudium/Anwend/WS2005_2006/TESTD_XML_auto/liefer-dat.xml: Externe Entität nicht gefunden: "file:/D:/Daten/Joachim/Hauptstudium/Anwend/WS2005_2006/TESTD_XML_auto/D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\lieferdat.dtd": D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\lieferdat.dtd (Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch)
Fehler bei:
Document doc = builder.build(fileName);
Die XML Datei sieht wie folgt aus:
==========================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE lieferdat SYSTEM "D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\lieferdat.dtd">
<liefer-dat>
<lieferant>
<name>Lieferant1</name>
<umsatz>
<merkmal>C</merkmal>
<januar>10000</januar>
<februar>0</februar>
<maerz>0</maerz>
<april>0</april>
<mai>0</mai>
<juni>0</juni>
<juli>0</juli>
<august>0</august>
<september>0</september>
<oktober>0</oktober>
<november>0</november>
<dezember>0</dezember>
</umsatz>
</lieferant>
</liefer-dat>
Auszug aus einer Method in der eigenen Klasse XMLHandler:
=============================================
public static void readXML(String fileName) throws JDOMException,
IOException {
SAXBuilder builder = new SAXBuilder(true);
Document doc = builder.build(fileName);
System.out.println (doc.getDocType());
Element root = doc.getRootElement();
List rootChildren = root.getChildren();
Iterator it = rootChildren.iterator();
.....
Die DTD hatte ich sowohl selber geschrieben, als auch generieren lassen.
Wenn ich das ganze ohne DocTyp Eintrag mache - läuft der SaxBuilder
Hat jemand von euch eine Idee ?
Gruss
JFE
ich erstelle mit JDOM ein XML File mit einem DocTyp.
Ich habe mit dem Einlesen durch den SaxBuilder probleme.
Fehlermeldung:
org.jdom.input.JDOMParseException: Error on line 2 of document file:/D:/Daten/Joachim/Hauptstudium/Anwend/WS2005_2006/TESTD_XML_auto/liefer-dat.xml: Externe Entität nicht gefunden: "file:/D:/Daten/Joachim/Hauptstudium/Anwend/WS2005_2006/TESTD_XML_auto/D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\lieferdat.dtd": D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\lieferdat.dtd (Die Syntax für den Dateinamen, Verzeichnisnamen oder die Datenträgerbezeichnung ist falsch)
Fehler bei:
Document doc = builder.build(fileName);
Die XML Datei sieht wie folgt aus:
==========================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE lieferdat SYSTEM "D:\Daten\Joachim\Hauptstudium\Anwend\WS2005_2006\TESTD_XML_auto\lieferdat.dtd">
<liefer-dat>
<lieferant>
<name>Lieferant1</name>
<umsatz>
<merkmal>C</merkmal>
<januar>10000</januar>
<februar>0</februar>
<maerz>0</maerz>
<april>0</april>
<mai>0</mai>
<juni>0</juni>
<juli>0</juli>
<august>0</august>
<september>0</september>
<oktober>0</oktober>
<november>0</november>
<dezember>0</dezember>
</umsatz>
</lieferant>
</liefer-dat>
Auszug aus einer Method in der eigenen Klasse XMLHandler:
=============================================
public static void readXML(String fileName) throws JDOMException,
IOException {
SAXBuilder builder = new SAXBuilder(true);
Document doc = builder.build(fileName);
System.out.println (doc.getDocType());
Element root = doc.getRootElement();
List rootChildren = root.getChildren();
Iterator it = rootChildren.iterator();
.....
Die DTD hatte ich sowohl selber geschrieben, als auch generieren lassen.
Wenn ich das ganze ohne DocTyp Eintrag mache - läuft der SaxBuilder
Hat jemand von euch eine Idee ?
Gruss
JFE
Zuletzt bearbeitet: