JAVA EE 5. Arquitectura, conceptos y ejemplos.



Documentos relacionados
Desarrollo de Software con

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1)

Tema 5. Plataforma Java EE

Aplicaciones web construidas a base de componentes:

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

Tema 1. Introducción a Java EE

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com

JavaEE.

SISTEMAS DE INFORMACIÓN III TEORÍA

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

Temario máster Java. Módulo 1 Fundamentals of the Java Programming Language. Duración: 40 horas

Desarrollo y servicios web Sesión 18

Tema 5. Plataforma Java EE

Curso de Java EE Todos los Derechos Reservados Global Mentoring 2012 Experiencia y Conocimiento para tu Vida 1

Proyecto ELO-330 Administración Salas del Departamento de Electrónica RC1. Gerardo Lecaros Felipe Díaz

Introducción al Desarrollo de Aplicaciones Empresariales

CentralTECH JAVA EE 7 Desarrollo

Caso J2EE. Necesidades del negocio. Arquitectura Luther

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

Para el desarrollo de aplicaciones Web se han generado múltiples tecnologías entre ellas se encuentran:

Desarrollo y servicios web

arquitectura que maneja. Encontraremos también los diferentes servidores que

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

CAPÍTULO 3 DISEÑO DE LA ARQUITECTURA

Plataforma desarrollo Java Formación elearning tutorizada en castellano. Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java

Facultad de Ingeniería Escuela de Ciencias y Sistemas Estructura de Datos Guatemala 2013 JSF + JSP + RichFaces

Notas técnicas de JAVA Nro. 7 Tip Breve

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

Capitulo III. Diseño del Sistema.

Windows Server Windows Server 2003

Capítulo III. Análisis y diseño.

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms


[CASI v.0109] Pág. 1

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

PROGRAMA FORMATIVO Desarrollo de aplicaciones empresariales Java J2EE 7 (ORACLE)

Cómo puede ayudarle JBuilder en sus Desarrollos Java?

Curso de Spring Framework

Curso: Programación con JAVA SE Estándar Edition.

Panorámica de la asignatura

GUÍA TÉCNICA. Desarrollo de Sistemas de Información la plataforma Business Intellingence Pentaho

5.1 Introducción a Servicios Web

Alfresco permite su integración y personalización en sistemas de gestión documental para implementar funcionalidades específicas

Ficha Técnica. Categoría. Contenido del Pack. Sinopsis. Programación. - 2 Manual Teórico - 1 Cuaderno de Ejercicios - 1 CDROM

CAPÍTULO 3 VISUAL BASIC

Técnico Superior en Programación con Java SE Standard Edition

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

UNIVERSIDAD DE OVIEDO

Tema 6: Comparativa CORBA/Servicios Web

MARCANDO LA DIFERENCIA

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Plataforma de expediente

Descripción de Arquitectura Repositorio de metadatos de componentes de software

Introducción al Desarrollo de Aplicaciones Web D R A. M A R I C E L A B R A V O

Cursos PROGRAMACIÓN DE APLICACIONES CON JAVA

Capítulo 5. Cliente-Servidor.

CAPÍTULO 5 IMPLEMENTACIÓN DEL SISTEMA

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

Bienvenidos a la presentación: Introducción a conceptos básicos de programación.

Aplicaciones J2EE. Repasamos. Tres tipos de aplicaciones. Aplicaciones Web Java Objetos distribuidos EJBs Aplicaciones Empresariales

Web Services en Java. Taller de Programación. Instituto de Computación Facultad de Ingeniería Universidad de la República

Ingeniería de Software. Pruebas

LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO

Service Oriented Architecture

1 Índice Introducción Propósito Alcance Modelo Arquitectónico Inicial... 3

Familia de Windows Server 2003

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Capitulo 5. Implementación del sistema MDM

Una puerta abierta al futuro

Capítulo V. Implementación

Microsoft SQL Server Conceptos.

PROCEDIMIENTO ESPECÍFICO. Código G Edición 0

UNIVERSIDAD DE SALAMANCA

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

1. Definición. Open Source. Escalable. Alto desempeño. Arquitectura Modular. Producto de licencia de código abierto sin coste adicional.

Introducción a SOA (II) Huibert Aalbers Senior Certified Software IT Architect

Artículos técnicos Grupo Danysoft: Soporte de Servidores de Aplicaciones con JBuilder

Componentes de Integración entre Plataformas Información Detallada

Capítulo I. Marco Teórico

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

Visualización y modelado de elementos geográficos en dispositivos móviles. Capítulo 5: Aplicaciones cliente

SERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA

ARQUITECTURAS DE PROCESOS DE NEGOCIOS INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

Introducción a las redes de computadores

MICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I Facultad de Ingeniería, UBA. Junio Cátedra: Pablo Cosso

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

Sesión 17. Servicios web RESTful

Documento Técnico Gerardo Barcia Jonathan Trujillo María Alejandra Uribe

Mi propuesta consiste en crear un portal Web que contemple las siguientes funcionalidades:

Capítulo 7. Implementación del Sistema

DIPLOMATURA DESARROLLO DE APLICACIONES JAVA

SIGPRE Sistema de Gestión Presupuestaria

Configuración servidor Tomcat

Service Oriented Architecture: Con Biztalk?

Windows Server 2012: Infraestructura de Escritorio Virtual

Curso de Java EE Todos los Derechos Reservados Global Mentoring Experiencia y Conocimiento para tu Vida 1

Transcripción:

JAVA EE 5. Arquitectura, conceptos y ejemplos.

INTRODUCCIÓN.

MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones multicapa, las cuales son escalables, accesibles y tienen capacidad de gestión para aplicaciones de nivel empresarial. Este modelo implementa un servicio multicapa que se divide en: la capa de negocio y la lógica de presentación que serán implementadas por el desarrollador y los servicios del sistema estándar proporcionado por la plataforma Java EE.

Aplicaciones Multicapa distribuidas.

La plataforma Java EE utiliza un modelo de aplicación distribuida multicapa para aplicaciones empresariales. La lógica de aplicación de divide en componentes según la función y los componentes de las distintas aplicaciones que integran una aplicación Java EE se instalan en máquinas diferentes dependiendo del nivel, en el entorno multinivel de Java EE al que pertenece el componente de la aplicación.

Una aplicación Java EE puede constar de 3 o 4 niveles; las aplicaciones Java multicapa se consideran en general aplicaciones de 3 niveles, ya que esta distribuida en: las maquinas clientes, el servidor Java EE y la base de datos. Nivel de Cliente: componentes que corren en la maquina cliente. Nivel Web: componentes que corren en el servidor Java EE. Capa de Negocios: componentes que corren en el servidor Java EE. Nivel EIS (Enterprise Information System): software que se ejecuta en el servidor EIS.

SEGURIDAD. La plataforma Java EE proporciona reglas estándar para el control de acceso que son definidas por el desarrollador e interpretadas cuando la aplicación se implementa en el servidor. Java EE también ofrece mecanismos estándar para inicio de sesión.

COMPONENTES JAVA EE. Una aplicación Java EE esta creada de componentes. Un componente de Java EE es una unidad autónoma de software funcional que se ensambla en una aplicación Java EE con sus clases y archivos relacionados y que se comunica con otros componentes. Las especificaciones Java EE define los siguientes componentes.

Las aplicaciones cliente y los applets son componentes que se ejecutan en el cliente. Java Servlet, JavaServer Faces y JavaServer Pages son componentes Web que se ejecutan en el servidor. Enterprise JavaBeans (EJB) son componentes de negocio que se ejecutan en el servidor. La diferencia entre los componentes de Java EE y las clase de Java estándar es que los componentes son ensamblados en una aplicación JEE y se verifica que estén bien creados y que cumplan con las especificaciones JEE. Se despliegan a la producción, donde se ejecutan y gestionan por el servidor Java EE.

CLIENTES JAVA EE. Un cliente Java EE puede ser un cliente Web o una aplicación cliente. Cliente Web. Applets. Clientes de aplicación.

CLIENTES WEB. Un cliente web se compone de 2 partes: 1. Páginas web dinámicas que contienen diversos tipos de lenguaje de marcas (HTML, XML, etc), que son generados por los componentes Web que se ejecuta en la capa Web 2. Navegador es el encargado de interpretar las paginas recibidas por el servidor.

APPLETS. Es una aplicación cliente pequeño escrito en el lenguaje de programación Java que se ejecuta en la maquina virtual Java instalada en el navegador. Es decir que los sistemas clientes necesitaran de un plug-in de java y posiblemente un archivo con políticas de seguridad para poder ejecutar con éxito el applet en el navegador web.

APLICACIÓN CLIENTE. Una aplicación cliente se ejecuta en una maquina de forma stand-alone, generalmente tiene una interfaz grafica de usuario (GUI) creadas con API Swing o AWT, pero una interfaz desde línea de comandos también es posible. Las aplicaciones cliente pueden tener acceso directamente a la capa de negocios. Sin embargo si los requisitos de la aplicación así lo justifiquen un cliente de aplicación puede abrir una conexión HTTP para establecer comunicación con un servlet que se ejecuta en la capa web.

ARQUITECTURA DE LOS COMPONENTES JAVABEANS. El servidor y el cliente pueden incluir componentes JavaBeans para administrar el flujo de datos entre una aplicación cliente o un applet y componentes que se ejecutan en el servidor JEE o entre componentes de servidor y BD. Los JavaBeans no son considerados componentes de las especificaciones JEE. JavaBeans tiene propiedades pero para acceder a ellas se necesita de los métodos get y set.

JAVA EE COMUNICACIÓN CON EL SERVIDOR.

El cliente se puede comunicar directamente con la capa de negocios que se ejecuta en el servidor JEE ó por medio de un navegador yendo a través de las paginas JSP o Servlets que se ejecutan en la capa Web dentro del servidor JEE.

COMPONENTES WEB. Los componentes Web de Java EE son Servlets ó paginas creadas con tecnología JSP y/o tecnología JavaServer Faces. Los Servlets son clases escritas con el lenguaje de programación Java que procesan peticiones y construyen peticiones dinámicamente. Las paginas JSP son documentos basados en texto que se ejecutan como servlets, pero permitir un enfoque más natural a la creación de contenido estático de la tecnología. JavaServer Faces es una tecnología de Servlets y JSP que proporciona un Framework para Interfaz de usuario en los componentes de una aplicaciones Web.

La siguiente imagen muestra como se pueden incluir JavaBeans para gestionar los datos enviados por el cliente.

COMPONENTES DE NEGOCIO. Es la lógica que resuelve o satisface las necesidades de un dominio particular de negocios como la banca, venta al por menor ó la financiación está a cargo de un enterprise bean que se ejecutan en la capa de negocio. La siguiente imagen muestra como un enterprise bean recibe los datos de un cliente y los envía al sistema de información empresarial (EIS) para su almacenamiento. Un enterprise bean también recupera datos almacenados y los envía al cliente.

SISTEMA DE INFORMACIÓN EMPRESARIAL. El Sistema de Información Empresarial (EIS) incluye software y sistemas de infraestructura de la empresa tales como la planificación de recursos empresariales (ERP), procesamiento de transacciones mainframe, sistemas de base de datos y otros sistemas de información heredados.

CONTENEDORES JAVA EE.

Normalmente, las aplicaciones de cliente delgado con múltiples niveles son difíciles de escribir porque implican muchas líneas de código complejo para manejar las transacciones y la gestión estatal, multithreading, la combinación de recursos, y otros detalles de bajo nivel de complejidad. El componente de base y de independientes de la plataforma Java EE permite la arquitectura de aplicaciones Java EE fácil de escribir, porque la lógica de negocio se organiza en componentes reutilizables. Además, el servidor Java EE proporciona servicios subyacentes en la forma de un contenedor para cada tipo de componente.

SERVICIOS DE CONTENEDORES. Los contenedores son la Interfaz entre un componente y la plataforma de bajo nivel especifica la funcionalidad que soporta el componente. Antes de que una Web, un enterprise bean ó un componente de aplicación cliente pueda ser ejecutado debe ser ensamblado en un modulo JEE y desplegado en su recipiente. El proceso de montaje consiste en especificar la configuración de contenedores para cada componente; la configuración de soporte subyacente por el servidor JEE, incluye los servicios tales como seguridad, gestión de transacciones, Java Naming and Directory Interface (JNDI) las búsquedas, y la conectividad remota.

Aspectos mas destacados sobre los servicios de un contenedor: El modelo de seguridad de Java EE permite configurar un componente Web o un enterprise bean para que los recursos del sistema sean accesibles únicamente por usuarios autorizados. El modelo de transacciones Java EE permite especificar las relaciones entre los métodos que conforman una sola transacción, de modo que todos los métodos en una sola transacción se tratan como una sola unidad. Los servicios de búsqueda JNDI proporcionar un interfaz unificado para múltiples nombres y los servicios de directorio en la empresa de manera que los componentes de aplicación puede tener acceso a estos servicios. El modelo de Java EE de conectividad remota gestiona la comunicación de bajo nivel entre los clientes y los enterprise bean. Después de que un enterprise bean se crea, un cliente llama a los métodos en él como si estuviera en la misma máquina virtual.

TIPOS DE CONTENEDORES. Servidor Java EE: La porción de tiempo de ejecución de un producto de Java EE. Un servidor Java EE proporciona contenedores EJB y Web. Enterprise JavaBeans (EJB) contenedor: Administra la ejecución de los enterprise bean para las aplicaciones Java EE. Enterprise bean y de su contenedor se ejecutan en el servidor de Java EE. Contenedor Web: Administra la ejecución de los componentes JSP y servlets para aplicaciones Java EE. Componentes Web y su contenedor se ejecutan en el servidor de Java EE. Contenedor de aplicación cliente: Administra la ejecución de los componentes de la aplicación cliente. Las aplicaciones cliente y sus contenedores se ejecutan en el cliente. Contenedor Applet: Administra la ejecución de applets. Consiste en un navegador web y Java Plug-in, se ejecutan en el cliente juntos.

WEB SERVICES.

Los servicios web son aplicaciones basadas en la web de la empresa con estándares como XML y protocolos de transporte para el intercambio de datos. La plataforma Java EE proporcional el API de XML y las herramientas necesarias para diseñar, desarrollar, probar y desplegar servicios web y los clientes que operan con otros servicios es decir los clientes que corren en plataformas diferentes, que no utilizan como plataforma base Java EE.

TECNOLOGÍAS DE UN WEB SERVICES EN JEE XML: es multi-plataforma, extensible, basado en texto estándar para representar los datos. Protocolo de transporte SOAP: las solicitudes del cliente y las respuestas de un servicio web se transmiten con un SOAP es decir mensajes a través de HTTP para permitir un intercambio completamente interoperable entre los clientes y los servicios web. SOAP es un protocolo basado en XML que sigue el modelo HTTP petición y respuesta.

Formato estándar WSDL: El Web Services Description Language (WSDL) es un formato XML estándar para describir servicios de red. La descripción incluye el nombre del servicio, la ubicación del servicio, y las maneras de comunicarse con el servicio. Descripciones del servicio WSDL se pueden almacenar en registros UDDI o publicados en la web (o ambos). Sun Java System Application Server Platform Edition 8 proporciona una herramienta para la generación de la especificación WSDL de un servicio web que utiliza las llamadas a procedimiento remoto para comunicarse con los clientes. UDDI y ebxml Formatos Estándar: Otras normas basadas en XML, como Universal Description, Discovery and Integration (UDDI) y ebxml, permiten a las empresas a publicar información en Internet sobre sus productos y servicios web, donde la

EMPAQUETANDO APLICACIONES.

Una aplicación Java EE es liberada con un archivo Enterprise Archive (EAR) y archivo Java Archive (JAR) con una extensión.ear el uso de archivos EAR y módulos permite a un numero de diferentes aplicaciones Java EE utilizando algunos de los componentes del mismo. Un archivo EAR contiene módulos de Java EE y descriptores implementados. Un descriptor implementado es un documento XML con extensión.xml que describe la configuración de la implementación de una aplicación, un módulo o un componente.

Estructura de un archivo EAR.

API DE JAVA EE 5.

TECNOLOGÍA ENTERPRISE JAVABEANS. Un componente EJB ó enterprise bean, es un conjunto de código con los campos y métodos para implementar los módulos de la lógica de negocio. Hay 2 tipos de enterprise bean: los sesion beans y los message-driven beans. En Java EE 5, beans de entidad han sido sustituidos por las entidades Java Persistence API. Una entidad representa datos persistentes almacenados en una fila de una tabla de base de datos. Si el cliente termina, o si se apaga el servidor, el administrador de persistencia se asegura de que se guardan los datos de la entidad.

JORGE ALBERTO LEONOR GONZÁLEZ. Facultad Ciencias de la Computación BUAP.