JSR-299 Especificación de web beans ahora es pública
martes, noviembre 4, 2008 at 6:37PM Se ha publicado el primer borrador de esta especificación para su revisión pública. Este estándar está enfocado a definir componentes (Java beans o EJBs) cuyo ciclo de vida será gestionado por el servidor. Está inspirado en Spring, Seam y Guice; así que si has trabajado con uno de estos frameworks encontrarás que se reusan muchos de sus conceptos.
En detalle, Web Beans provee de:
- Administración del ciclo de vida de los beans dentro de contextos.
- Inyección de dependencias.
- Interacción vía un mecanismo de notificación de eventos.
- Interceptores.
Los Web beans contienen la lógica del negocio y pueden ser invocados directamente desde código Java o desde el lenguaje unificado EL; lo que de hecho permite invocarlos de forma directa desde JSPs y JSF. Esto último ha sido tomado de la forma en que Seam trabaja, donde un EJB de sesión actúa como un managed bean de una o más páginas JSF.
De hecho la idea central de los web beans es mejorar y facilitar la integración de las tecnologías web (sobre todo JSF que es el estándar de JEE) con la capa de lógica de negocio (esté implementada con EJBs o no) y otras APIs de JEE como JMS. Otra caractéristca de esta especificación es de que desde el primer momento optaron por usar anotaciones en vez de XML para la configuración.
La gente de JBoss que fueron los impulsores de la especificación han publicado un tutorial de introducción a esta nueva tecnología. Así que si quieres ir viendo cómo funciona, revisa el enlace que he puesto a dicha guía.
Poco a poco JEE 6 va tomando forma, con Web Beans, JPA 2.0 y JSF 2.0 como las APIs que permitarán simplificar el desarrollo web con Java y que en gran medidad han aprendido de librerías open source.
La única pega que le veo a web beans es que es a primera vista no resulta sencillo aprender a usarla, hay que acostumbrarse al ciclo de vida que maneja, a las anotaciones, etc. Lo que puede suponer una barrera para aquellos que usan Spring o Guice y no quieran cambiar su forma de trabajar.
¿Qué os parece esta nueva especificación?
j2ee 
Reader Comments