Mostrando las entradas con la etiqueta seam. Mostrar todas las entradas
Mostrando las entradas con la etiqueta seam. Mostrar todas las entradas

jueves, 11 de marzo de 2010

Proyecto WAR con Seam 2.2 en JBoss AS 5.1

Quiero compartir la solución a un problemita bajo una configuración particular, resultando en que las entidades mapeadas del WAR no eran encontradas por Hibernate.

Estoy armando un proyecto de prueba usando SEAM 2.2 y JBoss AS 5.1, para probar algunas novedades y cambios de las últimas versiones por un lado, y por otro, para experimentar con ciertos características.

El entorno de desarrollo es Eclipse 3.5 con JBoss Tools 3. Aquí no utilicé seam-gen, y creé directamente el proyecto desde el IDE. Usé una base de datos MySQL 5.1 y todo el conjunto corre sobre Ubuntu Karmic Koala (9.10).

El problema y la solución es la indicada en JBSEAM-3821, aunque el problema estaría solucionado usando el seam-gen desde SEAM 2.1.2.CR1, parece el mismo también sucede al crear proyectos con JBoss Tools 3.

The comments in the components.xml and persistence.xml files of the JPA Example generated for JBoss 5 show the correct way to handle this. Although it would be nice if SeamGen handled this correctly.

En el último comentario del reporte del bug, está la solución (o su workaround). Los datos claves son:

  • en el components.xml, agregar en la etiqueta <persistence:entity-manager-factory/> el atributo installed="false", y en la etiqueta <persistence:managed-persistence-context/> agregar el atributo persistence-unit-jndi-name="java:/bookingEntityManagerFactory".
  • en el persistence.xml, la propiedad <property name="jboss.entity.manager.factory.jndi.name" value="java:/bookingEntityManagerFactory"/>
Salvando este detalle, ya podemos trabajar normalmente. De todas formas, recomiendo usar el seam-gen, que es muy interesante y útil, pero en caso de no usarlo, ya saben :)

viernes, 30 de enero de 2009

Web Beans

Ya hay una documentación preliminar sobre Web Beans, y formaría parte de Java EE 6. Todavía está en una etapa temprana, y habrán cambios y definiciones importantes. Pero lo llamativo, es que ya mismo se dispone de documentación en castellano y en otros idiomas, no solo en inglés.

Recientemente se anunció el cambio de nombre: se llamará "Java Contexts and Dependency Injection", lo cual representa mejor su alcance, y es la introducción formal de las mejores ideas y soluciones que nos trajo Spring, Guice, Seam y otros frameworks.

El trabajo se está realizando en la JCP bajo la JSR-299., con la participación de la mayoría de los proveedores de soluciones EE, como JBoss e IBM.

JBoss es el responsable de realizar la implementación de referencia, la cual ya está disponible como Alpha 2. Se espera que JBosss SEAM 3 esté basado en JSR-299.

viernes, 14 de noviembre de 2008

Ironía

Me encontré un comentario muy divertido en la documentación del framework SEAM.

Para entender el contexto, estaba leyendo en el manual las recomendaciones sobre cómo configurar la JVM, y rematan con lo siguiente:
If you don't want to bother with this stuff now, you don't have to—come back to it later, when you get your first OutOfMemoryException.
Que viene a decir:
Si no quiere preocuparse por estas cosas ahora mismo, no tiene que hacerlo. Vuelva más tarde, cuando obtenga su primer OutOfMemoryException.
Muy sutil :D