Aplicaciones JEE 2008-2009 DASDI 1 Repasamos … Tres tipos de aplicaciones Aplicaciones Web Java Objetos distr
Views 119 Downloads 8 File size 224KB
Aplicaciones JEE 2008-2009
DASDI
1
Repasamos …
Tres
tipos de aplicaciones
Aplicaciones Web Java Objetos distribuidos EJBs Aplicaciones Empresariales
2008-2009
DASDI
2
Plataforma J2EE
2008-2009
DASDI
3
Clientes
2008-2009
DASDI
4
Aplicaciones Web Java
2008-2009
DASDI
5
Aplicación Web Java Colección
de recursos:
Jsps Servlets Ficheros Html, Imagenes Librerías (jars), etc…
Ubicados en un URI específico http://www.dasdi.uniovi.es/calculadora
Resuelven
una funcionalidad Interfaz de usuario Web 2008-2009
DASDI
6
Aplicaciones Web J2EE
Organización: estructura jerárquica de directorios
dos partes
Un árbol de directorios privado: WEB-INF
2008-2009
contiene los recursos que no son descargables para el cliente
Un árbol de directorios público
aplicación\ index.html login.jsp images\ *.gif doc\ *.pdf META-INF\MANIFEST.MF WEBWEB -INF\ INF\ web.xml Deployment Descriptor classes\ *.class lib\ *.jar DASDI
7
Archivos WAR Web
Permiten empaquetar en una sola unidad aplicaciones web java completas Se despliega en un servidor de aplicaciones contenedor Web
Hacer un “deploy” al servidor El servidor “desmonta” el war y coloca cada cosa donde lo necesita
2008-2009
Application Archive
Cada servidor a su manera DASDI
8
Archivos WAR
Son una extensión del archivo JAR Se introdujeron en la especificación 2.2 de los servlets. Multiplataforma MultiVendor root\ META-INF\ MANIFEST.MF *.*
Estructura de un JAR 2008-2009
DASDI
9
Archivos WAR: Ventajas
Simplifican el despliegue de aplicaciones web.
Facilidad de instalación Copiar fichero en el servidor Uno para cada servidor si es un cluster.
Seguridad
2008-2009
No permite el acceso entre aplicaciones web distintas (aunque se ejecuten en el mismo servidor) DASDI
10
Ejemplo de Estructura JSP pages, HTML documents, image files
app.war
Content directories
JSP pages, HTML documents, image files
web.xml
WEB-INF
Class files
classes
beans
Package directories
2008-2009
lib
JAR files
tlds
TLD files
DASDI
Class files
11
Estructura Ejemplo
index.html
faq.war WEB-INF web.xml
list.jsp admin classes
lib
tlds
show.jsp
add.jsp delete.jsp
psql.jar faqServlet.class
2008-2009
DASDI
faqtags.tld 12
Descriptor de Despliegue: web.xml
WEB-INF/web.xml Documento XML
. . .
En él se dan de alta Servlets, JSPs, TLDs, Filtros, etc…
2008-2009
Se informa al servidor de como es la aplicación DASDI
13
Ejemplo de Web.xml
2008-2009
web.xml tiene muchas opciones de configuración, echa un vistazo a la DASDI 14 especificación
Creación manual de .WAR
2008-2009
DASDI
15
Empaquetado de Enterprise JavaBeans
2008-2009
DASDI
16
EJBs
Los EJBs se agrupan en paquetes para poder ser distribuidos. En un solo paquete se pueden dar de alta varios EJBs de diferentes tipos:
2008-2009
Sesión, Entidad, MDB
El módulo o paquete de distribución es un archivo JAR con una determinada estructura.
DASDI
17
Archivo EJB-JAR
Un EJB-JAR es la manera en que son distribuidos desarrollos EJB's
2008-2009
WAR modulariza aplicaciones con JSP's/Servlets EJB-JAR modulariza aplicaciones con EJB's
Facilitan el despliegue de los EJBs en cualquier servidor de aplicaciones J2EE compatible DASDI
18
Estructura EJB-JAR /*.class
Bajo este directorio base se encuentran las diversas clases que conforman a un EJB /META-INF/ejb ejb--jar.xml
Descriptor de despliegue /META-INF/*
Otros archivos de configuración requeridos por el contenedor de EJBs 2008-2009
Nombre y formato particular a cada vendor orion-jar.xml, jboss.xml, web-sphere.xml, etc DASDI
19
Ejemplo estructura EJB-JAR
2008-2009
DASDI
20
ejb-jar.xml Descriptor de Despliegue
META-INF/ejb-jar.xml Documento XML En él se dan de alta y declaran
EJBs Parámetros del contexto Relaciones Políticas transaccionales etc
. . .
2008-2009
DASDI
21
Ejemplo ejb-jar.xml
2008-2009
DASDI
22
Aplicaciones Empresariales Java
2008-2009
DASDI
23
Aplicación empresarial JEE Aplicación empresarial JEE = Aplicación/es web java empaquetadas en WAR + Objetos distribuidos EJB empaquetados en
JAR = Archivo EAR.
2008-2009
Soluciona problemas relativos al ClassLoader del sistema
DASDI
24
Estructura del Enterprise Application Archive /*.war Archivos WAR. /*.jar Archivos EJB-JAR (jar). /META-INF/application.xml application.xml Descriptor de despliegue del módulo EAR.
2008-2009
DASDI
25
META-INF/application.xml Descriptor de Despliegue
En él se dan de alta y declaran
Nombre y descripción de la aplicación que se despliega Los diferentes módulos web y EJB que forman la aplicación.
Piloto curso Web. Seresco. Prácticas del curso de desarrollo web
appblank.war /appblank
2008-2009 DASDI
26
Estructura application.xml
2008-2009
DASDI
27
Referencias •
Libros
Web Development with JavaServer Pages by Duane Fields and Mark Kolb (Manning) Core Servlets and JavaServer Pages by Marty Hall (Prentice-Hall) Java Server Programming J2EE Edition (Wrox) Books
URLs
Servlet specification available at http://java.sun.com/products/servlet/download.html
2008-2009
www.javasoft.com www.theserverside.com
DASDI
28
Taller práctico … Construcción “a mano” de mi primera aplicación Web
2008-2009
DASDI
29
Paso a paso …
2008-2009
El OC4J sólo admite el despliegue de aplicaciones J2ee completas, es decir, archivos EAR. Tenemos que construir nuestro propio archivo EAR conteniendo un solo archivo WAR con una página HTML estática. Primero entonces, vamos a “montar” nuestra aplicación Web …
DASDI
30
Paso a paso … Mi primera aplicación Web
Como mínimo, vamos a tener que crear una página estática (index.html) y un descriptor de despliegue web.xml.
2008-2009
Creamos una carpeta temporal TRABAJO colgando de la carpeta PROYECTOS Dentro de trabajo creamos una carpeta WEB-INF. Ahora, colgando de trabajo y con el bloc de notas creamos el archivo index.html con el clásico “Hola Mundo!”. Y dentro de WEB-INF, creamos el archivo web.xml con el siguiente contenido …
DASDI
31
Paso a paso … Web.xml básico Contenido del Web.xml básico: