Hallo,
zur Zeit bin ich mit folgendem Problem beschäftigt:
In meinem Programm erstelle ich ein JDOM-Document, welches nach der Erstellung validiert und bei erfolgreicher Validierung in einer Datei abgespeichert werden soll.
Leider habe ich es bisher nur geschaft, das Document zu validieren, nachdem es gespeichert wurde.
Mein bisheriger Code sieht etwa folgendermaßen aus:
Habt ihr eine Idee, wie ich das Problem lösen könnte?
Gruß
zur Zeit bin ich mit folgendem Problem beschäftigt:
In meinem Programm erstelle ich ein JDOM-Document, welches nach der Erstellung validiert und bei erfolgreicher Validierung in einer Datei abgespeichert werden soll.
Leider habe ich es bisher nur geschaft, das Document zu validieren, nachdem es gespeichert wurde.
Mein bisheriger Code sieht etwa folgendermaßen aus:
Java:
//Zunächst wird das Document-objekt erzeugt
Document dokument = new Document(wurzel);
//------------------------------------------------------------------------------------------
//Dann erfolgt die Ausgabe in die Datei
try
{
XMLOutputter ausgabe = new XMLOutputter(Format.getPrettyFormat());
//Hier erfolgt die Ausgabe in die Datei.
//Man könnte die Methode outputString verwenden, um einen String zu erstellen, der gegen das
//XML-Schema validiert wird. Im Anschluss könnte man das Ergebnis bei erfolgreicher Validierung
//speichern.
//Leider weiß ich nicht, wie man den zurückgegebenen String validiert (siehe auch unten)
ausgabe.output(dokument, new FileOutputStream(file));
}
catch(Exception e)
{
System.out.println(e);
}
//------------------------------------------------------------------------------------------
//Es folgt die Validierung gegen ein XML-Schema
try
{
File xsdFile = new File("src/analyzer/xml/xmlexport/xmltest.xsd");
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-noNamespaceSchemaLocation", xsdFile.toURI().toString() );
builder.build(file);
System.out.println("Successfully parsed and validated");
}
catch(Exception cause)
{
System.err.println(cause);
}
Habt ihr eine Idee, wie ich das Problem lösen könnte?
Gruß
Zuletzt bearbeitet: