Buenas estoy realizando la validacion del xml con el codigo que os pongo aki, y me salta la excepcion que os pongo en el catch que mi SAX parser no es JAXP 1.2 complaint porque no reconoce la propiedad SAX "http://java.sun.com/xml/jaxp/properties/schemaLanguage":
CODIGO:
String SCHEMA_LANGUAGE= "http://java.sun.com/xml/jaxp/properties/schemaLanguage",
XML_SCHEMA = "http://www.w3.org/2001/XMLSchema",
SCHEMA_SOURCE = "http://java.sun.com/xml/jaxp/properties/schemaSource";
byte currentXMLBytes[] = xml.getBytes();
ByteArrayInputStream input = new ByteArrayInputStream(currentXMLBytes);
File schema = new File(getServletContext().getRealPath("/views") + "documentos.xsd");
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setNamespaceAware(true);
factory.setValidating(true);
SAXParser parser = factory.newSAXParser();
try {
parser.setProperty(SCHEMA_LANGUAGE, XML_SCHEMA);
parser.setProperty(SCHEMA_SOURCE, schema);
} catch (SAXNotRecognizedException x) {
log.writeTrace(Log.ERROR,this,"validaXML","Your SAX parser is not JAXP 1.2 compliant.");
log.writeTrace(Log.ERROR,this,"validaXML",JFactory Exception.getStackTrace(x));
return false;
}
return true;
El xml lo paso por parametro a la funcion.
Que puedo hacer????