Hallo zusammen,
ich habe ein Problem mit der Validierung meiner eingelesenen XML Dokumente.
Meinen XML Dokument setzt sich aus 3 Dokumenten zusammen. 2 werden per <xi:include> eingebunden.
Die includes machten am Anfang Probleme, habe das aber dann auf diesem Weg gelöst:
Wie kann ich nun mein XML-Dokument ( hier: xmlFile ) gegen mein xsd bzw. die generierten Klassen validieren?
Ich möchte einfach ausschließen dass irgendwelche anderen XML Files eingelesen werden und dann irgendwelche Exceptions fliegen.
Komm grade nicht dahinter...
Gruß
Niko
ich habe ein Problem mit der Validierung meiner eingelesenen XML Dokumente.
Meinen XML Dokument setzt sich aus 3 Dokumenten zusammen. 2 werden per <xi:include> eingebunden.
Die includes machten am Anfang Probleme, habe das aber dann auf diesem Weg gelöst:
Code:
JAXBContext jc = JAXBContext.newInstance(Catalog.class.getPackage().getName());
UnmarshallerHandler unmarshallerHandler = jc.createUnmarshaller().getUnmarshallerHandler();
// create a sax parser
SAXParserFactory spf = SAXParserFactory.newInstance();
spf.setNamespaceAware(true);
XMLReader xmlReader = spf.newSAXParser().getXMLReader();
// resolves the included xml-files
XIncludeFilter includer = new XIncludeFilter();
includer.setParent(xmlReader);
// write the resolved document to the UnmarshallerHandler if the 'parse()' method is called
includer.setContentHandler(unmarshallerHandler);
includer.parse(xmlFile);
Data data = (Data) unmarshallerHandler.getResult();
Wie kann ich nun mein XML-Dokument ( hier: xmlFile ) gegen mein xsd bzw. die generierten Klassen validieren?
Ich möchte einfach ausschließen dass irgendwelche anderen XML Files eingelesen werden und dann irgendwelche Exceptions fliegen.
Komm grade nicht dahinter...
Gruß
Niko