Estoy intentando obtener un archivo WAR para ejecutar dentro de un contenedor Karaf OSGi. La aplicación se ejecuta correctamente en el embarcadero independiente 6.1.26, pero cuando la aplicación se ejecuta dentro de Karaf, me sale el siguiente excepción y la instancia Karaf congela:Cómo obtener Spring JPA, Hibernate y OSGi para jugar bien?
WARN org.hibernate.ejb.packaging.InputStreamZippedJarVisitor - Unable to find
file (ignored): bundle://125.0:240/ java.lang.NullPointerException: in is null
Tenga en cuenta que la aplicación no se basa en hibernación en un paquete OSGi separado; incluye los contenedores de hibernación en WEB-INF/lib.
He examinado la información en esta publicación: Equinox (OSGi) and JPA/Hibernate - Finding Entities. Sin embargo, la aplicación está utilizando JPA, en lugar de usar Hibernate directamente. La configuración de la aplicación es muy similar a la segunda opción que se encuentra en esta publicación: Difference between configuring data source in persistence.xml and in spring configuration files. Como tal, no tengo un control en una SessionFactory de Hibernate que me permita establecer la propiedad anotatedClasses.
¿Alguna idea sobre cómo pasar la excepción?
Para ver un ejemplo de un archivo Spring JPA persistence.xml, consulte [Sección 12.6.1.3 del Manual de referencia de Spring Framework] (http://static.springsource.org/spring/docs/2.5.x/reference/ orm.html). Para esta solución, el archivo orm.xml incluía solo el elemento '' y un elemento anidado '' con el nombre de clase completo de cada clase que contiene anotaciones @Entity. El atributo 'metadata-complete =" false "' le dice a hibernate que lea todos los datos que no están especificados en el archivo orm.xml (todo, en este caso) a partir de las anotaciones especificadas en la clase. –
Adam