Cambiar el parser XML o el procesador XSLT

2032 vistas

Para cambiar el parser XML tendremos que especificar la variable de entorno javax.xml.parsers.XXX, donde XXX determina la implementación que nos interesa. Veamos algunos ejemplos:

Ejemplo DOM



java
  1. System.setProperty("javax.xml.parsers.DocumentBuilderFactory",
  2.                   "net.sf.saxon.om.DocumentBuilderFactoryImpl");
  3. DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance();



Ejemplo SAX



java
  1. System.setProperty("javax.xml.parsers.SAXParserFactory", "org.apache.crimson.jaxp.SAXParserFactoryImpl");



También podemos hacer estas modificaciones desde la línea de comandos. Pr ejemplo:



dos
  1. java -Djavax.xml.parsers.XXXFactory=nombre.completo.de.la.implementation ...



Para el procesador XSLT el funcionamiento es el mismo. Bastará con indicar al sistema qué implementación del procesador XSLT tiene que usar.

Naturalmente podemos usar directamente las implementaciones (sin pasar por las factory), pero esto hace perder la portabilidad del código.