Arquitectura JEE
Introduccin
La tecnologa JEE est basada en java y consiste en una plataforma de programacin para desarrollar y ejecutar software de aplicaciones en el lenguaje de programacin del mismo nombre. Dicha tecnologa tambin permite utilizar arquitecturas de N capas distribuidas y se apoya ampliamente en componentes de software modulares ejecutndose sobre un servidor de aplicaciones. La plataforma Java EE es tambin considerada en entornos de desarrollo como un estndar debido a que los proveedores deben cumplir ciertos requisitos de conformidad para declarar que sus productos son conformes a Java EE.
Manejo de APIS
Java EE incluye varias especificaciones de API, tales como JDBC, RMI, e-mail, JMS, Servicios Web, XML, etc. Entre los APIS que destacan dentro de JEE estn los siguientes: JDBC es el API para acceso a SGBDR desde Java. Java Transaction API (JTA) es el API para manejo de transacciones a travs de sistemas heterogneos. Java Naming and Directory Interface (JNDI) es el API para acceso a servicios de nombres y directorios. Java Message Service (JMS) es el API para el envo y recepcin de mensajes por medio de sistemas de mensajera empresarial como IBM MQ Series. JavaMail es el API para envo y recepcin de email.
Componentes
Java EE configura algunas especificaciones nicas para Java EE para componentes. Estas incluyen Enterprise JavaBeans, servlets, portlets (siguiendo la especificacin de Portlets Java), JavaServer Pages y varias tecnologas de servicios web. Esto permite crear una Aplicacin Empresarial portable entre plataformas y escalable, a la vez que integrable con tecnologas anteriores.
Arquitectura
La arquitectura JEE implica un modelo de aplicaciones distribuidas en diversas capas o niveles como se indica en la siguiente figura.
La capa cliente admite diversas tipos de clientes (HTML, Applet, aplicaciones Java, etc.) la capa intermedia contiene subcapas tales como el contenedor web y el contenedor EJB. La tercera capa dentro de esta visin sinttica es la de aplicaciones como ERP, EIS, bases de datos, etc. Un concepto clave de la arquitectura es el de contenedor, que en forma genrica no es ms que un entorno de ejecucin estandarizado que ofrece unos servicios por medio de componentes. Los componentes externos al contenedor tienen una forma estndar de acceder a los servicios de dicho contenedor, con independencia del fabricante.
Capa Cliente
Esta capa corresponde a lo que se encuentra en el computador del cliente. Es la interfaz grfica del sistema y se encarga de interactuar con el usuario. J2EE tiene soporte para diferentes tipos de clientes incluyendo clientes HTML, applets Java y aplicaciones Java
Capa Web
Se encuentra en el servidor web y contiene la lgica de presentacin que se utiliza para generar una respuesta al cliente. Recibe los datos del usuario desde la capa cliente y basado en stos genera una respuesta apropiada a la solicitud. J2EE utiliza en esta capa las componentes Java Servlets y JavaServer Pages para crear los datos que se enviarn al cliente, as como tambin servirn de interfaces.
Capa Negocio
Se encuentra en el servidor de aplicaciones y contiene el ncleo de la lgica del negocio de la aplicacin. Provee las interfaces necesarias para utilizar el servicio de componentes del negocio. Las componentes del negocio interactan con la capa de datos y son tpicamente implementadas como componentes EJB.
Componentes EJB
La arquitectura EJB es una tecnologa de lado del servidor para desarrollo y ejecucin del servidor para desarrollo y ejecucin de componentes para lgica de negocio de aplicacin empresarial. Tambin hay que destacar que los componentes EJB son escalables, transaccionales y multiusuario.
1.- Session Bean: provee un servicio detrs de un cliente y usualmente durante una
nica sesin. Ejecuta operaciones de clculos o accesos a DB para el cliente.
mantenimiento de los datos en un almacenamiento. Es decir es una envoltura de objeto para los datos.
Capa Datos
Esta capa es responsable del sistema de informacin de la empresa o Enterprise Information System (EIS) que incluye bases de datos, sistema de procesamiento datos, sistemas legados y sistemas de planificacin de recursos. Esta capa es el punto donde las aplicaciones J2EE se integran con otros sistemas no J2EE o con sistemas legados.
Conclusiones
Una de las principales ventajas o beneficios que ofrece esta tecnologa es el hecho de que su arquitectura permite manejar transacciones, as como tambin permite gestionar la seguridad, escalabilidad, concurrencia y gestin de los componentes desplegados, permitiendo que un equipo de desarrollo se concentre ms en la lgica de negocio de los componentes en lugar de tareas de mantenimiento de bajo nivel.