Download SEMINARIO DE PROGRAMACION WEB (TECNOLOGIA JAVA)

Document related concepts
no text concepts found
Transcript
Aplicaciones
J2EE
Repasamos …
 Tres
tipos de aplicaciones
Aplicaciones Web Java
 Objetos distribuidos EJBs
 Aplicaciones Empresariales

Aplicaciones Web Java
Introducción
 Colección
como
de recursos tales
Jsps
 Servlets
 Ficheros Html
 Imagenes
 Etc…


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.html
login.jsp
images\ logo.gif
doc\ tutorial.pdf
WEB-INF\
web.xml (Deployment Descriptor)
classes\ ServletCompras.class
lib\ 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
app.war
JSP pages, HTML documents, image files
Content
directories
JSP pages, HTML documents, image files
web.xml
WEB-INF
classes
Class files
beans
Package
directories
lib
JAR files
tlds
TLD files
Class files
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
faqtags.tld
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



/*.war
Archivos war.
/*.jar
Archivos (ejb) jar.
/META-INF/application.xml
Descriptor 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 …