Your SlideShare is downloading. ×
Resumen jee
Resumen jee
Resumen jee
Resumen jee
Resumen jee
Resumen jee
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Resumen jee

213

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
213
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Plataforma Java EEComo decíamos en la primera entrada, la plataforma Java EE está destinada a desarrollaraplicaciones empresariales distribuidas, con una arquitectura multi-capa, escritas en ellenguaje de programación Java y que se ejecutan en un servidor de aplicaciones.Esto es muy cierto, pero Java EE no es un producto de Sun (Oracle), es un conjunto deespecificaciones que permiten soluciones para el desarrollo, despliegue y gestión deaplicaciones multicapa centradas en servidor.¿Un conjunto de especificaciones? ¿Qué quiere decir esto? Esto quiere decir que cualquierfabricante puede coger estas especificaciones y desarrollar un producto final que lascumpla. Sun ha creado una implementación de todas estas especificaciones (Glassfish)pero no es la única empresa.¿Que es una especificación?Una especificación no es más que un papelito que detalla cada una de las tecnologías dentrode la plataforma Java EE. Un conjunto de reglas que dictan como debe desarrollarse eseproducto de tal forma que se pueda garantizar que una aplicación desarrollada siguiendo lasespecificaciones de Java EE pueda desplegarse y ejecutarse.Por ejemplo, los servlets son una tecnología de la plataforma Java EE y como tal, disponede una especificación. Así, una empresa puede desarrollar un producto que implemente laespecificación de los servlets, de tal forma, que ese producto pueda ejecutar servlets. Y asícon todas las tecnologías que forman parte de la plataforma Java EE. Con producto nosreferimos a un servidor de aplicaciones como Glassfish, o incluso un simple contendor deservlets como Apache Tomcat.Tecnologías de la plataforma Java EE Enterprise JavaBeans (EJB). Java Servlet JavaServer Page (JSP) JavaServer Pages Standard Tag Library (JSTL). JavaServer Faces (JSF) Java Message Service (JMS). Java Transaction API (JTA). JavaMail API y JavaBeans Activation Framework (JAF). Tecnologías XML (JAXP, JAX-RPC, JAX-WS, JAXB, SAAJ, JAXR) JPA, JDBC API Java Naming and Directory Interface (JNDI) Java Authentication and Authorization Service (JAAS)¿Cuántas siglas eh? No nos asustemos por ahora, no vamos ni a explicar brevemente en queconsiste cada tecnología. Las iremos viendo poco a poco.
  • 2. Aplicación multi-capaHemos dicho que la plataforma Java EE está destinada a desarrollar aplicacionesdistribuidas con una arquitectura multi-capa. Esto quiere decir que podemos separar eldesarrollo de la aplicación en diferentes capas según su función. Las aplicaciones Java EEsuelen ser consideradas aplicaciones de tres capas porque se distribuyen en treslocalizaciones, ordenadores clientes, el sistema donde se ejecuta el servidor de aplicaciones,y el sistema donde reside la base de datos. La capa del cliente (Client-tier) que es la capa destinada a mostrar la interfaz gráfica de usuario. Las aplicaciones Java EE pueden ser una aplicación Java Swing normal, o una aplicación Web renderizada en un navegador. Esta capa se ejecuta en el ordenador cliente. La capa de la lógica de negocio (Business-tier) y la capa de la lógica de presentación (Web-tier). Estas capas se ejecutan en el servidor de aplicaciones. La capa de los datos (Data-tier) que es la capa destinada a la gestión de los datos. Esta capa puede separarse a su vez en una o más capas.Servidor de aplicaciones y contenedoresComo hemos dicho, las aplicaciones empresariales se ejecutan en un servidor deaplicaciones.Una aplicación empresarial Java EE está formada por un conjunto de módulos donde cadamódulo es un conjunto de uno o más componentes que se ejecutan en el mismocontenedor.Un componente no es más que una unidad de software, puede ser un componente webcomo una página JSP o un servlet, un componente EJB, etc. Estos componentes se ejecutandentro de sus correspondiente contenedor dentro del servidor de aplicaciones.
  • 3. El contenedor no es más que un entorno de ejecución que gestiona los componentes, poreso, los componentes deben de cumplir el contrato que establece el contenedor. Esecontrato no es más que un conjunto de métodos que debe implementar el componente y quepermite al contenedor interactuar con él.Existen dos tipos de contenedores dentro de un servidor de aplicaciones: Contenedor WEB encargado de gestionar los componentes servlets y páginas JSP. Contenedor EJBs encargado de gestionar los componentes EJBs.
  • 4. En la siguiente imagen tenemos un detalle mayor de los contenedores del servidorde aplicacionesAdemás cada contenedor proporciona una serie de servicios que el componente puedeutilizar. El contenedor es el encargado de gestionar el ciclo de vida de los componentes,realizar la reserva de recursos, etc. Algunos de estos servicios son servicios declarativos,esto quiere decir que algunos servicios se declaran en vez de programarse. La declaraciónse realiza mediante descriptores de despliegue. Cada módulo dispone de un descriptor dedespliegue. El descriptor de despliegue no es más que un archivo XML que describe comose deben desplegar esos componentes en el contenedor del servidor de aplicaciones.Los módulos que forman una aplicación empresarial pueden ser de tres tipos: Archivos JAR (Java Archive): Los archivos JAR permiten agrupar distintos archivos .java en uno solo. Es el empleado para empaquetar componentes EJBs. Archivos WAR (Web Application Archive): Los archivos WAR permiten empaquetar en una sola unidad aplicaciones web completas (servlets, páginas JSPs, contenido estático como imágenes y otros recursos Web). Archivos EAR (Enterprise Application Archive): Los archivos EAR son archivos desplegables en servidores de aplicaciones JEE. Contienen archivos WAR y EJBs empaquetos en ficheros JAR.
  • 5. Por lo que podríamos decir que existen tres tipos de aplicaciones Java EE: Aplicaciones Web JAVA. Objetos distribuidos EJBs. Aplicaciones empresariales que engloba a las dos anteriores, aplicaciones web JAVA y objetos distribuidos EJBs.Servidor de aplicaciones JEEA continuación vamos a entrar en más detalle. Para ello, hemos subrayado en el siguientegráfico los elementos más importantes y usuales. La arquitectura de un servidor deaplicaciones incluye una serie de subsistemas: Servidor HTTP (también denominado servidor Web o servidor de páginas). Un ejemplo, el servidor Apache. Contenedor de aplicaciones o contenedor Servlet/JSP. Un ejemplo, Tomcat (que incluye el servicio anterior sobre páginas) Contenedor Enterprise Java Beans, que contiene aplicativos Java de interacción con bases de datos o sistemas empresariales. Un ejemplo es JBoss que contiene a los anteriores (servidor de páginas web y contenedor de aplicacione web).Pero conviene empezar por el principio, es decir, el lenguaje básico de interconesión: elprotocolo HTTP. Es un protocolo de aplicación, generalmente implementado sobre TCP/IP.Es un protocolo sin estado basado en solicitudes (request) y respuestas (response), que usapor defecto el puerto 8080: "Basado en peticiones y respuestas": significa que el cliente (por ejemplo un navegador) inicia siempre la conexión (por ejemplo, para pedir una página). No hay
  • 6. posibilidad de que el servidor realize una llamada de respuesta al cliente(retrollamada). El servidor ofrece la respueta (la página) y cierra la conexión. En lasiguiente petición del cliente se abre una conexión y el ciclo vuelve e empezar: elservidor devuelve el recurso y cierra conexión."Sin estado": el servidor cierra la conexión una vez realizada la respuesta. No semantienen los datos asociados a la conexión. Más adelante veremos que hay unaforma de persistencia de datos asociada a la "sesión".

×