Title: Diapositiva 1
1Installing and Configuring Tomcat
2The Apache Jakarta Project
- The Apache Jakarta Project creates and maintains
open source solutions on the Java platform for
distribution to the public at no charge - Apache Jakarta Tomcat (or just Tomcat) is one
of those projects.Tomcat is a container for
servlets. - Tomcat can act as a simple standalone server for
Web applications that use HTML, servlets, and
JSP. Apache is an industrial-strength, highly
optimized server that can be extended with Tomcat
3Dónde descargarlo
- http//tomcat.apache.org/
- Versión 5.x
- http//tomcat.apache.org/download-55.cgi
- Enlace RedIris
- http//apache.rediris.es/tomcat/tomcat-5/v5.5.23/
bin/apache-tomcat-5.5.23.zip - Documentación Tomcat 5.5
- http//tomcat.apache.org/tomcat-5.5-doc/index.htm
l
4Estructura de directorios
CATALINA_HOME
- Ejecutable de Tomcat, scripts y precompilador de
JSP
Clases y JARs accesibles a todas las aplicaciones
web y a Tomcat
Archivos de configuración (server.xml)
Archivos de registro (log)
Clases y aplicaciones accesibles sólo a Tomcat
(manager y admin)
Clases y JARs accesibles a todas las aplicaciones
web
Archivos temporales
Aplicaciones web y algunas de ejemplo
Archivos temporales, JSP compilados
5Configuración
- Fichero CATALINA_HOME/bin/catalina.bat Añadir
la variables de entorno del HOME de Java - JRE_HOMEC\Archivos de programa\Java\jre1.6.0
- Usuarios CATALINA_HOME/conf/tomcat-users.xml
- ltuser username"dani" password"dani"
roles"tomcat,manager"/gt - Arrancar TOMCAT CATALINA_HOME/bin/startup.bat
- Parar TOMCAT CATALINA_HOME/bin/shutdown.bat
6Creación de una aplicación
- Estructura de directorios (I)
zona pública de la aplicación (puede
organizarse como se desee)
zona privada de la aplicación
7Creación de una aplicación
- Estructura de directorios (II)
Directorio raíz Contiene la parte pública de la
aplicación documentos HTML, JSP, CSS, código
JavaScript, imágenes, etc. Lo habitual es
organizarlo en varios subdirectorios para
imágenes, para estilos, etc. WEB-INF Contiene la
parte privada de la aplicación el descriptor de
despliegue de la aplicación (web.xml), las clases
compiladas (classes), las bibliotecas de clases
(lib) y las etiquetas para usar en los documentos
JSP (tld). META-INF Es opcional y suele contener
sólo el archivo MANIFEST.MF, que indica las
bibliotecas de las que depende la aplicación. Se
suele generar automáticamente.
8Creación de una aplicación
- Despliegue de la aplicación
- Archivos WAR
- La forma más sencilla de desplegar (instalar)
una aplicación web en Tomcat es copiar el archivo
WAR de la aplicación en webapps Tomcat lo
descomprimirá e instalará la aplicación
automáticamente. Un archivo WAR no es más que el
directorio de la aplicación comprimido en un
archivo en formato ZIP. - 2. Despliegue manual
- Se puede crear el directorio a mano, copiar los
archivos y desplegar la aplicación con la
aplicación de gestion (manager) que viene con
Tomcat.
9Creación de una aplicación
- Dónde ubicar la aplicación. Dos posibilidades
- Directorio webapps/miAplicacion
- En un directorio cualquiera dentro o fuera del
directorio raíz de TOMCAT
10Creación de una aplicación
- Crear un contexto para nuestra aplicación
En el directorio CATALINA_HOME/conf/Catalina/lo
calhost/ crear un fichero nombre_aplicacion.xml
con el contenido ltContext docBase"C/daniel/Esc
ritorio/miAplicacion" reloadable"true"gt lt/Context
gt
Ruta al raíz de la aplicación
Reload sin necesidad de desplegar nuevamente
11Creación de una aplicación
- Crear el descriptor de despliegue de la
aplicación (web.xml en el directorio WEB-INF) - El archivo CATALINA_HOME/conf/web.xml establece
opciones por defecto para todas las aplicaciones,
p.e. el procesamiento de páginas JSP. - Cada aplicación tiene su propio web.xml,
normalmente generado por el entorno de
desarrollo, en el directorio WEB-INF. Algunos
elementos interesantes de web.xml son - lticongt icono de la aplicación
- ltdisplay-namegt nombre de la aplicación
- ltdescriptiongt descripción de la aplicación
- ltservletgt declaración de un servlet
- ltservlet-mappinggt mapeo de un servlet a una URL
- ltsession-configgt configura parámetros de la
sesión - ltwelcome-file-listgt define los documentos por
defecto
12Creación de una aplicación
- Ejemplo de web.xml
- lt?xml version"1.0" encoding"ISO-8859-1"?gt
- ltweb-app xmlns"http//java.sun.com/xml/ns/j2ee"
- xmlnsxsi"http//www.w3.org/2001/XMLSchema-in
stance" - xsischemaLocation"http//java.sun.com/xml/ns
/j2ee http//java.sun.com/xml/ns/j2ee/web-app_2_4.
xsd" - version"2.4"gt
- ltdisplay-namegtMi aplicaciónlt/display-namegt
- ltdescriptiongtMi aplicaciónlt/descriptiongt
- lt/web-appgt
13Creación de una aplicación
- Hacer accesibles todos los servlets de nuestra
aplicación. Dos pasos - .1 Editar CATALINA_HOME/conf/web.xml
- Descomentar las líneas
- ltservlet-mappinggt
- ltservlet-namegtinvokerlt/servlet-namegt
- lturl-patterngt/servlet/lt/url-patterngt
- lt/servlet-mappinggt
- 2. Editar web.xml de nuestra aplicación. Añadir
- ltservlet-mappinggt
- ltservlet-namegtinvokerlt/servlet-namegt
- lturl-patterngt/servlet/lt/url-patterngt
- lt/servlet-mappinggt
- Así, los servlets que estén en WEB-INF/classes
serán accesibles
14Servlets JSP (JAVA Server Pages)
15Qué son
-
- Los servlets y Java Server Pages (JSPs) son dos
métodos de creación de páginas web dinámicas en
servidor usando el lenguaje Java. En ese sentido
son similares a otros métodos o lenguajes tales
como el PHP, los CGIs (common gateway interface),
programas que generan páginas web en el servidor,
o los ASP (Active Server Pages), un método
específico de Microsoft. Sin embargo, se
diferencian de ellos en otras cosas.
16Qué son
-
- Para empezar, los JSPs y servlets se ejecutan en
una máquina virtual Java, lo cual permite que se
puedan usar en cualquier tipo de ordenador que
tenga instalada una máquina virtual Java. Cada
servlet o JSP se ejecuta en su propia hebra, es
decir, en su propio contexto pero no se comienza
a ejecutar cada vez que recibe una petición, sino
que persiste de una petición a la siguiente, de
forma que no se pierde tiempo en invocarlo
(cargar programa intérprete). Su persistencia
le permite también hacer una serie de cosas de
forma más eficiente conexión a bases de datos o
manejo de sesiones.
17Qué son
-
- Los JSPs son en realidad servlets un JSP se
compila a un programa en Java la primera vez que
se invoca, y del programa en Java se crea una
clase que se empieza a ejecutar en el servidor
como un servlet. La principal diferencia entre
los servlets y los JSPs es el enfoque de la
programación - un JSP es una página Web con etiquetas especiales
y código Java incrustado - mientras que un servlet es un programa que recibe
peticiones y genera a partir de ellas una página
web
18Java Server Pages conceptos
-
- Los JSPs son en realidad servlets un JSP se
compila a un programa en Java la primera vez que
se invoca, y del programa en Java se crea una
clase que se empieza a ejecutar en el servidor
como un servlet. La principal diferencia entre
los servlets y los JSPs es el enfoque de la
programación - un JSP es una página Web con etiquetas especiales
y código Java incrustado - mientras que un servlet es un programa que recibe
peticiones y genera a partir de ellas una página
web