AplicacionesJ2EE
Repasamos …
Tres tipos de aplicacionesAplicaciones Web JavaObjetos distribuidos EJBsAplicaciones Empresariales
Aplicaciones Web Java
Introducción
Colección de recursos tales comoJspsServletsFicheros HtmlImagenesEtc…
Ubicados en un URI específico
Aplicaciones Web J2EE Una aplicación web
está organizada en una estructura jerárquica de directorios dos partes
Un directorio privado WEB-INF contiene los recursos que no son descargables para el cliente
Un directorio público que contiene los recursos públicos Ejemplo: miaplicación\
Index.htmllogin.jspimages\ logo.gifdoc\ tutorial.pdfWEB-INF\
web.xml (Deployment Descriptor)classes\ ServletCompras.classlib\ cualquierOtraApi.jar
Una aplicación web puede ser empaquetada en un fichero WAR.
Empaquetado en Archivos WAR
Archivos WAR
Web Application Archive Permiten empaquetar en una sola
unidad aplicaciones web java completas. Servlets y JSPs Contenido estático
Html Imágenes etc.)
Otros recursos web
Archivos WAR
Son una extensión del archivo JAR Se introdujeron en la especificación
2.2 de los servlets. Multiplataforma MultiVendor
Ventajas
Simplifican el despliegue de aplicaciones web. Facilidad de instalación Un solo fichero para cada servidor en un
cluster. Seguridad
No permite el acceso entre aplicaciones web distintas
Estructura
beans
WEB-INF
classes
P ackagedirec tories
lib
web.xml
C la ss file s
JA R file s
JS P p a g e s , HT M L d o cu m e n ts , im a g e file s
JS P p a g e s , HT M L d o cu m e n ts , im a g e file s
app.war
C la ss file s
Contentdirec tories
tlds T L D file s
Estructura Ejemplo
WEB-INF
classes lib
faq.war
tlds
delete.jspadd.jsp
index.html
admin
list.jsp
show.jsp
faqServlet.classpsql.jar
faqtags.tld
web.xml
Web.xml Descriptor de Despliegue
WEB-INF/web.xml Documento XML
<?xml version=”1.0” encoding=”ISO-8859-1” ?><DOCTYPE web-app PUBLIC ”-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN” ”http://java.sun.com/j2ee/dtds/web-app_2_2.dtd”>
En él se dan de alta Servlets Parámetros del contexto TLDs Filtros Etc.
Empaquetado de Enterprise JavaBeans
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: Sesión Entidad MSB
El módulo o paquete de distribución es un archivo JAR con una determinada estructura.
Archivo EJB-JAR
Un EJB-JAR es la manera en que son distribuidos desarrollos EJB's
de la misma forma en que los WARS modularizan el desarrollo de aplicaciones con JSP's/Servlets, un EJB-JAR lo hace para desarrollos con EJB's
Facilitan el despliegue de los EJBs en cualquier servidor de aplicaciones J2EE compatible
Estructura EJB-JAR
/*.class
Bajo este directorio base se encuentran las diversas clases que conforman a un EJB
/META-INF/ejb-jar.xml
Descriptor de despliegue/META-INF/*
Otros archivos de configuración requeridos por el contenedor de EJBs
ejb-jar.xml Descriptor de Despliegue
META-INF/ejb-jar.xml Documento XML<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN"
"http://java.sun.com/dtd/ejb-jar_2_0.dtd"><ejb-jar > <description><![CDATA[No Description.]]></description> <display-name>Generated by XDoclet</display-name> <enterprise-beans>
<session>…</session> <entity >…</entity>
<message-driven>…</message-driven> </enterprise-beans>
….</ejb-jar> En él se dan de alta y declaran
EJBs Parámetros del contexto Relaciones Políticas transaccionales etc
Aplicaciones Empresariales Java
Aplicación empresarial J2EE
Aplicación empresarial J2EE=
Aplicación/es web java empaquetadas en WAR+
Objetos distribuidos EJB empaquetados en JAR
= Archivo EAR. Soluciona problemas relativos al
ClassLoader del sistema
Estructura del Enterprise Application Archive
/*.warArchivos war.
/*.jarArchivos (ejb) jar.
/META-INF/application.xmlDescriptor de despliegue del módulo EAR.
application.xml Descriptor de Despliegue
META-INF/application.xml Documento XML<?xml version="1.0" ?><!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc. //DTD J2EE Application 1.2//EN" "http://java.sun.com/j2ee/dtds/application_1_2.dtd">
<application><display-name>Piloto curso Web. Seresco.</display-name><description>Prácticas del curso de desarrollo web</description><module>
<web><web-uri>appblank.war</web-uri><context-root>/appblank</context-root>
</web></module>
</application>
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.
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
www.javasoft.com www.theserverside.com
Taller práctico …Construcción “a mano” de mi primera aplicación Web
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. 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 …
Paso a paso …Web.xml básico
Contenido del Web.xml básico:<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"><web-app>
<display-namePrototipo Curso Web.</display-name><description>
Prototipo desarrollado para el curso sobre arquitectura web</description>
<!-- Página de entrada por defecto --> <welcome-file-list>
<welcome-file>index.html</welcome-file> </welcome-file-list></web-app>
Paso a paso …Estructura del WAR
Tenemos ya la estructura básica del archivo WAR:
trabajo
WEB-INF
web.xml
index.html
Paso a paso …Creación del WAR
Abrimos una ventana de comandos mediante setenv.bat
Nos colocamos DENTRO del directorio trabajo Creamos un archivo jar mediante la herramienta jar
del jdk y lo llamamos trabajo.war
jar cvf trabajo.war * Ya tenemos el archivo war creado. Podemos
comprobar que es un zip común abriéndolo con el Winrar.
Para desplegargo, lo copiamos a la carpeta webapps y rearrancamos Tomcat
Lo probamos yendo a http://localhost:8080/prueba
Paso a paso …
Top Related