Sei sulla pagina 1di 14

Java y Tecnologas JEE

Qu es Java EE?

Anteriormente conocido como Java 2 Platform, Enterprise Edition o J2EE, hasta la versin 1.4. Posteriormente, JEE 5 y JEE 6 Surge del grupo de trabajo JCP (Java Community Process) auspiciado por Sun Microsystems con el nimo de desarrollar un estndar para las APIs empresariales demandadas. Es una arquitectura abierta que permite desarrollar, desplegar y mantener aplicaciones distribuidas basadas en componentes y centradas en el lado del servidor.

La plataforma Java

Dispositivos mviles

Mquinas de escritorio

Servidores

Umesh Bellur

Qu son los componentes?

Son unidades de software independientes que pueden ser reutilizadas en mltiples aplicaciones. En muchas ocasiones representan abstracciones del mundo real pertenecientes al dominio del problema. Pueden interactuar y comunicarse con otros componentes a travs de canales bien definidos. Cada componente atiende a una responsabilidad funcional concreta.

Por qu son necesarios los componentes?

Los desarrolladores de software se percatan de la falta de flexibilidad e interoperabilidad de las aplicaciones clsicas en los entornos de red.
Hubo que plantearse romper el carcter monoltico del software empresarial mediante la estructuracin en varias capas o niveles independientes, cada uno con un propsito especfico y ensamblado a partir de componentes reutilizables. Producto de esta necesidad surgen varias arquitecturas multinivel distribuidas: CORBA (Common Object Request Broker Architecture), DCOM(Distributed Component Object Model)/Active X/.NET, EJB (Enterprise Java Beans)

Plataforma de aplicaciones empresariales: caractersticas deseables


Heterognea: Debe permitir mltiples sistemas operativos y lenguajes de desarrollo y la interconexin con otras plataformas. Fiable: Tiene que dar la confianza de que cumplir su cometido. Segura: Debe controlar el acceso, la autorizacin y el transporte. Robusta: Debe ser tolerante a fallos. Escalable: Tiene que facilitar la ampliacin y modificacin necesarias Alta disponibilidad: Debe ser fcil su adquisicin y aprendizaje. Fcil mantenimiento: Debe ser fcil mantener el sistema mediante la actualizacin de sus componentes.

Arquitectura Java EE

Modelo de Capas

Arquitectura Java EE

Qu es un contenedor?

Un contenedor es la implementacin de la interfaz (contrato) entre un componente y el sistema de nivel inferior que le da soporte. Este contrato especifica un entorno de ejecucin para los componentes que incluye persistencia, seguridad, concurrencia, monitorizacin, gestin del ciclo de vida, operacin, despliegue y otros servicios. Un contenedor Web maneja la ejecucin de las pginas JSP y componentes Servlet . Un contenedor EJB maneja la ejecucin de los Enterprise Java Beans. El Servidor de Aplicaciones se compone de: un servidor de pginas Web, un contenedor Web" y un contenedor EJB, aunque no todos son Fully JEE Compliant.

Arquitectura Java EE

Servicios Java EE
Para

cada contenedor Java EE proporciona una serie de servicios, como por ejemplo:
Java Transaction API (JTA) Java Persistence API (JPA) Java Message Service (JMS) Java Naming Direct Interface (JNDI) JavaMail Java Beans Activation Framework (JAF) Java API for XML Procesing (JAXP) Java EE Connector Arquitecture Java Authentication and Authorization Service (JAAS) Servicios Web (JAXWS)

Tipos de middleware

Explcito: la lgica del negocio se entremezcla con una farragosa lgica de invocacin a las APIs del middleware. Poca productividad Difcil escritura de cdigo Difcil mantenimiento Ejemplo: CORBA Implcito: permite declarar los servicios que se necesitan en un fichero separado (descriptor de despliegue) o mediante simples anotaciones en el cdigo. Ejemplo: Java EE, .NET

Arquitectura Java EE

Contenedores Java EE

Servidores de uso comn

Open Source

Tomcat (slo contenedor Web)


GlassFish JBoss

Geronimo
JOnAS

Comerciales

IBM WebSphere Application Server


Oracle WebLogic SAP Netweaver

Servicios Web

Conjunto de tecnologas que usan XML para intercambio de informacin en un entorno distribuido Protocolo de comunicacin: SOAP (Simple Object Access Protocol)

Estandarizado por W3C (http://www.w3c.org) Protocolo basado en XML para el intercambio de informacin Conceptualmente permite enviar peticiones/respuestas en XML (normalmente sobre HTTP y en menor medida SMTP)

Existen APIs, para los lenguajes ms usuales

Disponible para Java EE y .NET

Buena solucin para integracin de aplicaciones en Internet

Todos los firewalls reconocen HTTP Todos los fabricantes de tecnologa proporcionan soporte para Servicios Web

Las integraciones complejas en intranets suelen requerir funcionalidad que todava no soportan los Servicios Web

ej.: Transacciones

Potrebbero piacerti anche