<dossier xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation=
"http://mydomain.org/schema/dossier.xsd">
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setIgnoringComments(true);
dbf.setNamespaceAware(true);
dbf.setValidating(true);
dbf.setAttribute(JAXP_SCHEMA_LANGUAGE, W3C_XML_SCHEMA);
try {
documentBuilder = dbf.newDocumentBuilder();
documentBuilder.setErrorHandler(new DossierErrorHandler());
} catch (ParserConfigurationException e) {
e.printStackTrace();
}
ByteArrayInputStream bif = new ByteArrayInputStream(xml.getBytes());
documentBuilder.parse(bif);
Il est également possible de forcer le schéma
par
dbf.setAttribute(JAXP_SCHEMA_SOURCE, new File(xsdFile));
Ou bien par une ressource :
InputStream schemaIs = getClass().getResourceAsStream("/schema.xsd");
sp.setProperty(JAXP_SCHEMA_SOURCE, schemaIs);
1 commentaire:
BON DEPART
Enregistrer un commentaire