Hallo,
ich hoffe ihr könnt mir bei folgendem weiterhelfen:
ich nutze:
- java 1.4
- jdom 1.0
- xerces
Damit möchte ich nun eine xml-Datei gegen ein vorhandenes Schema validieren.
Auf der jdom-Seite steht dazu folgendes howto:
Genau so mache ich es, mein Code-Teil:
So weit, so gut.......Leider kriege ich bei der Ausführung die Fehlermeldung:
tender ist mein root-Element im xml-Dokument.
Aber die Pfade stimmen, auch die schema-Datei hab ich bei w3c validieren lassen.
ausgiebiges googeln lässt mich nun vermuten das das ein Bug in 1.4 in Bezug auf xerces ist, aber sicher bin ich mir nicht da ich darüber widersprüchliche Informationen gefunden habe.
Deshalb nun meine Frage an euch:
Hat jemand die gleiche Kombination laufen wie ich und validiert damit xml-Dokumente gegen Schemas?
Kennt jemand diesen Bug?
Gibt es Lösungen für dieses Problem?
Vielen Dank im Voraus für alle Antworten........
ich hoffe ihr könnt mir bei folgendem weiterhelfen:
ich nutze:
- java 1.4
- jdom 1.0
- xerces
Damit möchte ich nun eine xml-Datei gegen ein vorhandenes Schema validieren.
Auf der jdom-Seite steht dazu folgendes howto:
Code:
SAXBuilder builder =
new SAXBuilder("org.apache.xerces.parsers.SAXParser", true);
builder.setFeature(
"http://apache.org/xml/features/validation/schema", true);
builder.setProperty(
"http://apache.org/xml/properties/schema/external-schemaLocation",
"http://www.w3.org/2001/12/soap-envelope soap-envelope.xsd" + " " +
"http://kevinj.develop.com/weblog/weblog.xsd weblog.xsd");
Document doc = builder.build(xml);
Genau so mache ich es, mein Code-Teil:
Code:
SAXBuilder saxBuilder = new SAXBuilder("org.apache.xerces.parsers.SAXParser", true);
saxBuilder.setFeature("http://apache.org/xml/features/validation/schema", true);
saxBuilder.setProperty("http://apache.org/xml/properties/schema/external-schemaLocation", "C:\\projects\\rfq.xsd");
try {
saxBuilder.build(new StringReader(tenderML));
} catch (JDOMException e) {
e.printStackTrace();
System.exit(-1);
} catch (IOException e) {
e.printStackTrace();
}
So weit, so gut.......Leider kriege ich bei der Ausführung die Fehlermeldung:
org.jdom.input.JDOMParseException: Error on line 2: cvc-elt.1: Cannot find the declaration of element 'tender'.
tender ist mein root-Element im xml-Dokument.
Aber die Pfade stimmen, auch die schema-Datei hab ich bei w3c validieren lassen.
ausgiebiges googeln lässt mich nun vermuten das das ein Bug in 1.4 in Bezug auf xerces ist, aber sicher bin ich mir nicht da ich darüber widersprüchliche Informationen gefunden habe.
Deshalb nun meine Frage an euch:
Hat jemand die gleiche Kombination laufen wie ich und validiert damit xml-Dokumente gegen Schemas?
Kennt jemand diesen Bug?
Gibt es Lösungen für dieses Problem?
Vielen Dank im Voraus für alle Antworten........