2010-04-06 14 views
7

Hibernate 3.5-Final finalmente está aquí y ofrece el soporte JPA2 tan esperado, entre otras características. Estoy trabajando en un proyecto (basado en EJB3) usando JBoss 5.1.0.GA e Hibernate 3.3, pero quería aprovechar el JPA2 e intenté actualizar a Hibernate 3.5.Hibernate 3.5-Final en JBoss 5.1.0.GA

Lo que hice fue bastante simple y estándar: puse todos los hibernate 3.5 jar en la carpeta servidor/configuración (por defecto, todo, etc.)/lib - de esa manera tienen prioridad sobre los artefactos de hibernación enviados con JBoss. Parece sin embargo que los barcos de JBoss con bibliotecas que dependen de la parte aplicación JPA1 de la hibernación 3.3, porque empecé a tener algunos errores sobre los métodos abstractos no implementadas y cosas por el estilo de despliegue:

23:21:26,792 WARN [Ejb3Configuration] Persistence provider caller does not implement the EJB3 spec correctly. PersistenceUnitInfo.getNewTempClassLoader() is null. 
23:21:26,792 ERROR [AbstractKernelController] Error installing to Start: name=persistence.unit:unitName=kernel-ear-3.3.0-SNAPSHOT.ear/config-persistence.jar#ConfigurationPersistenceUnit state=Create 
java.lang.AbstractMethodError: org.jboss.jpa.deployment.PersistenceUnitInfoImpl.getValidationMode()Ljavax/persistence/ValidationMode; 
    at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:613) 
    at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:72) 
    at org.jboss.jpa.deployment.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:301) 
    at sun.reflect.GeneratedMethodAccessor308.invoke(Unknown Source) 

Tal vez debería usar una diferente persistencia proporcionada? Actualmente es:

org.hibernate.ejb.HibernatePersistence

Miré alrededor de la red y no encontró ningún rutas de actualización documentados. Incluso hubo una pregunta sin respuesta aquí en desbordamiento de pila sobre el tema.

¿Alguna idea, sugerencia? Gracias de antemano por tu ayuda.

+0

La actualización de Hibernate dentro de JBossAS rara vez es fácil, como habrás descubierto. Las interdependencias son demasiado ajustadas para todas las configuraciones de JBoss menos triviales. – skaffman

+0

hola, ¿fue capaz de resolver esto? Estoy después de hacer algo igual y enfrentar muchas dificultades. – adi

+0

Intente utilizar un nombre diferente para su archivo persistence.xml, como foo-persistence.xml –

Respuesta

6

Parece sin embargo que los barcos de JBoss con bibliotecas que dependen de la parte aplicación JPA1 de la hibernación 3,3

Sí, lo hace (ver this old mail para tener una idea) y no creo que su enfoque actual es posible. Tengo entendido que la integración de JPA 2 estaba planificada para JBoss 5.2, pero parece que decidieron omitir esta rama para ir directamente a JBoss 6.x.

+0

Sí, soy consciente del plan para incluir JPA2 en JBoss 5.2 y luego la decisión de ir directamente a JBoss 6. Esperé, sin embargo, que al menos brinden una ruta de actualización para los usuarios de JBoss 5.1, ya que es poco probable que muchos de ellos adoptará 6.x muy temprano. Gracias por la respuesta. –

+0

En realidad estaba realizando el mismo ejercicio y pude empaquetar todos los frascos dependientes de 3.5.x en mi oído, pero se produjo un error al analizar el archivo persistence.xml. No puede anular las dependencias de la carpeta jboss.home/commons/lib – Joe

0

También he añadido algunas instrucciones para el enlace anterior que trabajó para mí.

Cuestiones relacionadas