Java - Problemas con librerías jaxb

   
Vista:

Problemas con librerías jaxb

Publicado por Ator (50 intervenciones) el 29/02/2008 13:28:00
Buenas, os pongo en situación:

Cuando voy a usar en mi aplicación jaxb me sale el siguiente error:

8/02/29 11:30:58 javax.xml.parsers.FactoryConfigurationError: Provider org.apache.xerces.jaxp.SAXParserFactoryImpl not found

08/02/29 11:30:58 at javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:93)

08/02/29 11:30:58 at javax.xml.bind.helpers.AbstractUnmarshallerImpl.getXMLReader(AbstractUnmarshallerImpl.java:74)

08/02/29 11:30:58 at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:131)

08/02/29 11:30:58 at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(AbstractUnmarshallerImpl.java:99)

Estoy usando JDeveloper 9 y JVM 1.4, os voy a comentar como tengo montado la história.

El developer por defecto trae una implementación de SAXParserFactory que no me sive, entoces lo que he hecho ha sido usar una librería xerces.jar del proyecto apache que tengo importada en mi proyecto (No tengo acceso al contenedor para modificar nada, es decir no puedo meter jar OC4J). Para que cuando se haga el parseo del documento coja el del proyecto apache añado la siguiente propiedad al sistema :

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

El problema que me surge con JAXB es el siguiente:
Al añadir esta propiedad al sistema cuando uso jaxb me da el error que os mostraba al principio. Es como si por defecto buscara SAXParserFactory en el contenedor el lugar de buscarlo en el xerces.jar que yo le indico en la propiedad. ¿Por qué hace esto? ¿Como puedo hacer para que lo busque en el xerces.jar?.
También he provado en añadir esta propiedad en los fichero jaxb.properties generados en el databinding pero aun asi me sigue saliendo este error.
Espero haberme explicado más o menos bien. Un saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder