Construir Aplicaciones EJB con JBoss, Lomboz y Eclipse

Uno de los problemas que encar�n los desarrolladores J2EE es la sincronizaci�n de su c�digo con los descriptores de despliegue J2EE. Seg�n progresa el desarrollo de componentes, los desarroladores tienen que ir actualizando los descriptores de despliegue, una tarea generalmente tediosa que puede provocar otros errores, en lugar de dedicar el tiempo a la l�gica de negocio de la aplicaci�n. Xdoclet genera estos interfaces y clases de ayuda junto con los descriptores de despliegue, analizando los ficheros fuente. Estos ficheros se generan partiendo de plantillas que utilizan la informaci�n proporcionada en el c�digo fuente y sus etiquetas JavaDoc. XDoclet permite a los desarrolladores concentrarse en un �nico fichero fuente Java por cada componente, es decir, concentrarse en la l�gica de negocio de la aplicaci�n, y el resto lo hace Xdoclet.

Durante muchos a�os los desarrolladores han estado buscando este tipo de herramientas que aceleran el proceso de desarrollo y despliegue, y Xdoclet ciertamente es un paso en esa direcci�n. Espero que encuentres que Xdoclet hace m�s r�pidos y f�ciles el desarrollo y el despliegue. Por eso explora el poder de Xdoclet, Eclipse y JBOSS!

.�Introducci�n

.�Prerequisitos

Antes de empezar este tutorial deber�as tener alg�n conocimiento de la Tecnolog�a Java, XML, la tecnolog�a J2EE y algo de SQL, los conceptos de JDBC, y Xdoclet (Attribute Oriented Programming). Incluso si eres nuevo en muchas de estas cosas - no te asustes, aprender�s muchas cosas por el camino!

.�Herramientas requeridas

Necesitar�s una versi�n actualizada del Java Development Kit (JDK) o del Java Runtime Environment (JRE) - al m�nos JDK 1.3 o superior. Tambi�n se requiere Eclipse 2.1 como Integrated Development Environment (IDE) junto con su plug-in Lomboz 2.1_02 para el desarrollo de aplicaciones J2EE y su integraci�n con JBOSS.

Utilizaremos JBOSS-3.2.1 como servidor de aplicaciones, junto con su servidor Web Jetty y su base de datos integrada Hypersonic SQL.

.�Introducci�n al Ejemplo

Para este tutorial utilizaremos un ejemplo similar a un Inventario, pero en vez de utilizar alg�n complejo escenario o entrar en el extricto dise�o de la base de datos, nuestro �nimo es aprender c�mo dise�ar y desarrollar varios componentes J2EE utilizando esta nueva y revolucionaria aproximaci�n de Programaci�n Orientada al Atributo con la ayuda de estas herramientas.

Tenemos un esquema de base de datos llamado 'MyStore' que est� compuesto por cinco tablas.

  • La tabla Supplier almacena detalles de los suministradores (muchos) que venden diferentes materiales a MyStore el manager de MyStore env�a una solicitud a los suministradores cuando surge la necesidad.
  • La tabla Manager almacena detalles de los managers que ejecutan MyStore, actualmente s�lo hay un manager.
  • La tabla Customer almacena detalles de los clientes (muchos) que han comprado alg�n �tem al menos una vez.
  • La tabla Items mantiene un inventario de los �tems disponibles/no-disponibles (muchos).
  • La tabla StoreAccess almacena los detalles de autentificaci�n de todos los clients, suministradores y managers para el acceso on-line a MyStore.

Abajo tenemos una imagen de la base de datos MyStore:

Para acceder a los datos de la base de datos y para hacer operaciones de negocio, crearemos varios componentes J2EE incluyendo JavaBeans Enteprise de Sesi�n, de Entidad y Dirigidos-a-Mensaje adem�s de clientes Web que utilizan Servlets y p�ginas JSP.

La siguiente figura presenta una idea de la arquitectura de la aplicaci�n MyStore:

Nota:
En el caso de los clientes Web, los Servlets/JSP env�an una petici�n a los beans utilizando RMI (Remote Method Invocation). Los beans de entidad (con y sin estado) con Persistencia Manejada por el Bean (BMP) acceden a los datos de la base de datos utilizando Data Access Objects (DAO), que son envolturas para c�digo Java Database Connectivity (JDBC), mientras que los beans de entidad con persistencia manejada por el contenedor (CMP) no requieren DAO, ya que el contenedor maneja la comunicaci�n entre los beans y la base de datos, lo que es una caracter�stica muy poderosa. Finalmente, en el caso de clientes Java las peticiones a los beans de entidad se realizan mediante la tecnolog�a Java de capa media (RMI, CORBA, Java Messaging).

En la imagen de abajo puedes ver todos los beans implementados a lo largo de este tutorial as� como sus m�todos/comportamientos p�blicos. StoreAccessBean es un bean de sesi�n facade, que expone su interface a la Capa de Presentaci�n mientras encapsula las complejas interacciones de negocio con los beans de entidad Customer, Manager, Item y Suppler.

Los clientes, suministradores y managers de MyStore, entran en el sistema utilizando el bean de sesi�n sin estado StoreAccess. Una vez autentificados, piden informaci�n sobre el inventario, o los detalles de cada uno utilizando los distintos interfaces disponibles en el bean StoreAccess, que llama a los m�todos del resto de beans, desde donde se solicita la informaci�n. RequestItems y DeliverItems son Beans dirigidos-al-mensaje que escuchan mensajes desde un productor JMS y transfieren los mensajes a los beans apropiados.

Empecemeos el tutorial configurando el entorno en la p�gina siguiente.

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP
ARTÍCULO ANTERIOR

SIGUIENTE ARTÍCULO