Error inexplicable Enterprise Application
Buen día comunidad.
Estoy en medio de aprendizaje con JSF, EJB y JPA. Vamos, aprendiendo Java EE 5 para un proyecto en el que se me asignará dentro de poco.
Resulta que en este mundo de Java EE tengo un clásico proyecto creado con Maven en donde tienes un proyecto padre y tres proyectos hijos, uno que contiene el EAR, otro que contiene el jar de EJB y otro que contiene el WAR.
Ya hice unos beans de sesión, etc, todo bien. Con las bondades de "click-oriented programming" que ofrece NetBeans pues ya invoco desde la aplicación web a los beans de sesión, todo bien. Configuré mi persistence.xml de la siguiente manera:
Luego, tengo en mi bean de sesión lo siguiente:
Al dar click para ejecutar el proyecto me sale la siguiente excepción:
java.lang.RuntimeException: The persistence-context-ref-name [mx.com.pruebas.ejb.EntFacade/em] in module [pruebas-ear-1.0-SNAPSHOT#pruebas-web-1.0-SNAPSHOT.war] resolves to a persistence unit called [mx.com.pruebas.persistence_unit] which is of type RESOURCE_LOCAL. Only persistence units with transaction type JTA can be used as a container managed entity manager. Please verify your application.
¿A qué se debe?
En mi configuración
1) Ni tengo declarada mi unidad de persistencia cómo un recurso local
2) Ni tampoco hago referencia a "mx.com.pruebas.persistence_unit"
0_o
Espero me puedan ayudar, desde ya, muchas gracias.
- Inicie sesión o regístrese para enviar comentarios
Alguna otra aplicación que
Alguna otra aplicación que esté corriendo en el mismo servidor?
El detalle está en que te marca una excepción en código de algún ejemplo, el package no es de ninguna biblioteca (mx.com.pruebas)
Checa las configuraciones de data source desde la consola de administrador de tu server, y checa que no haya otros wars desplegados, puede ser por ése lado.
Ninguna otra aplicación
Para esta prueba he estado utilizando un servidor desde 0, lo único que tiene desplegado son las librerías para que funcione con jsf2. Fuera de eso no sé.
Respecto a wars, pues los únicos son las dependencias que weblogic necesita para entender jsf y demás. Fuera de eso no hay ninguna otra aplicación ni war.
Ejemplo
Podrías postear un ejemplo de un flujo sencillo, no sé, una inserción, o un borrado, tu managed bean, ejb y dao que consume tu unidad de persistencia?
Re: Ejemplo
Edición: No utilizo DAO para fin práctico de la prueba.
Desde ya, gracias.
No se me ocurre nada, excepto
No se me ocurre nada, excepto que hagas la prueba en otro application server distinto al que estás usando (si estás usando glassfish, usa jboss u otro), si es uno recién instalado, mejor, así te aseguras que sólo estás trabajando con tu ejemplo, y sólo con tu data source.
Re: No se me ocurre nada, excepto
Mudado de weblogic a glassfish, mismo error... De verdad que cada vez veo menos argumentos para justificar el uso de Java EE para desarrollos serios y rápidos. En fin le seguiré buscando.
DataSource
Jaj.. no te encabrites, verás que es un detalle que se debió de pasar por alto, veamos...
Veo que tienes algo como:
Intenta con:
¿Podrías además mostrar la configuración del data source?
Re: DataSource
Nah, no estoy enojado y mucho menos contigo que me has tratado de apoyar. Simplemente me frustra, ahora recuerdo porqué en casi todos los proyectos donde yo elegía tecnologías jamás me decantaba por Java EE :p
La configuración del data source... pues cómo nos piden hacer todo a través de NetBeans, la registré ahí, ¿la tengo que registrar en glassfish?
Ahí si te fallo, nunca he
Ahí si te fallo, nunca he trabajado en netbeans, peeeero, nunca he configurado ningún datasource desde el IDE, siempre directo en los xml del servidor; o bien colocando las propiedades directo en el xml de la unidad de persistencia (que varía dependiendo si usas Hibernate, Batoo o EclipseLink por mencionar ejemplos) No sé hasta qué punto pudiera ser eso. Igual podrías intentarlo también.