apache tomcat rafael emmi christian graffe. agenda reseña histórica ¿qué es tomcat? conceptos...

30
Apache Tomcat Rafael Emmi Christian Graffe

Upload: lourdes-saez-gomez

Post on 25-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Apache Tomcat

Rafael EmmiChristian Graffe

Page 2: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Agenda Reseña histórica ¿Qué es Tomcat? Conceptos Básicos Instalación y Configuración de Tomcat para

windows. Archivos .war Diferencia entre Tomcat y otros

Contenedores Web Ventajas de utilizar contenedores Conclusiones Ejemplos

Page 3: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Apache Tomcat es un contenedor de Servlet desarrollado por el Apache Software Fondation (ASF). Tomcat implementa las especificaciones de Java Servlet y JavaServer Pages (JSP).

Su primera Versión fue liberada en 1999.

Por la Página oficial de tomcat.apache.org es un Contenedor Web para la implementación de los Java Servlets y la tecnología de Java Server Pages (JSP).

El desarrollo del Apache Tomcat, intenta que sea con la colaboración de los mejores desarrolladores de todo el mundo.

¿Qué es Apache Tomcat?

3/28

Page 4: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Apache Tomcat provee numerosos proyectos de grandes escalas, y tareas críticas de aplicaciones web a lo largo de rango diverso de industrias y organizaciones. Algunos de sus usuarios y otras historias están listados en el siguiente hipervínculo http://wiki.apache.org/tomcat/PoweredBy.

Tomcat no debería confundirse con el Apache web server, que es una implementación en C de un Servidor HTTP estos dos no están uno contenido en otro.

Apache Tomcat incluye herramientas de configuración y manejo , pero también puede configurar tomcat con la edición de archivos que son formatos XML.

¿Qué es Apache Tomcat?

4/28

Page 5: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

¿Qué es Apache Tomcat?

5/28

AplicationClient

Aplication Client

Web Container

Dem

onio

Htt

p

J2S

E

JSP

JDBC

RMI-IIOP

Java Mails

JTA

JMS

JAF

JNDI

JMS

JND

I

JDB

C

RM

I-IIOP

J2SE

Http Request

DataBase

Http Response

Page 6: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Reseña Histórica

6/28

EL Proyecto de Apache Tomcat nace como un proyecto de software de Sun Microsystem como una referencia de implementación del Java Servlets y de la Especificación de Java Serves Page(JSP).

Liderizado por el arquitecto James Duncan Davidson.

Posteriormente ayudó a hacer el proyecto open source y en su donación a la Apache Software Foundation. James Duncan Davidson

at the Web 2.0 Expo 2007

Page 7: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

7/28

Version Release Date Description

3.0.x. (initial release)

1999Merger of donated Sun Java Web Server code and ASF and Implements Servlet 2.2 and JSP

1.1 specifications.

4.1.31October 11,

2004 Tomcat Implements Servlet 2.3 and JSP 1.2 specifications

5.0.x October 9, 2002 Tomcat Implements Servlet 2.4 and JSP 2.0 specifications

5.0.28 August 28, 2004 Tomcat Implements Servlet 2.3 and JSP 1.2 specifications

5.0.30 August 30, 2004 Tomcat Implements Servlet 2.3 and JSP 1.2 specifications

5.5.x August 31, 2004 Tomcat Implements Servlet 2.4 and JSP 2.0 specifications

5.5.26 February 2008 Tomcat Implements Servlet 2.4and JSP 2.0specifications

6.0.xDecember 1,

2006Tomcat Implements Servlet 2.5 and JSP 2.1specifications

6.0.18 July 31, 2008 Tomcat Implements Servlet 2.5 and JSP 2.1specifications

Versiones Apache Tomcat

Page 8: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Concepto Básicos

8/28

Servlet:

Servlets son de la plataforma Java la tecnología de elección para la ampliación y el mejoramiento de los servidores Web.

Servlets proporcionar un componente de base, independiente de la plataforma para la construcción de aplicaciones basadas en Web, sin las limitaciones de rendimiento de los programas CGI.

Hoy servlets son una opción popular para la construcción de aplicaciones Web interactivas.

Page 9: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Concepto Básicos

9/28

Contenedores Web o Contenedores de Servlet: Un contenedor Servlet es un componente especializado que apoya la ejecución de Servlet y JSP.

Servlets individuales están registrados dentro de un contenedor Servlet, promoviendo información al contenedor acerca de la funcionalidad que ofrecen, y qué otras URL o localizador de recursos utilizará para identificarse a sí mismos.

Algunos contenedores Web:

GlassFish (open source). Caucho's Resin Server. (open source) Java System Web Server, from Sun Microsystems. Jboss (open source).

Page 10: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Concepto Básicos

10/28

JavaServer Pages (JSP):

La tecnología de JavaServer Pages permite a los desarrolladores y diseñadores Web una mayor eficacia al desarrollar y mantener aplicaciones web que son ricos en información y además contienen elementos dinámicas que aprovechen los sistemas empresariales existentes.

Beneficios:

• Use la tecnología JSP, sin tener que aprender el lenguaje Java• Ampliar el lenguaje JSP• Fácil de escribir y mantener página

Page 11: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

11/28

¿Cómo Instalar la Versión Binaria de Tomcat 6.0 para windows?

1. Antes hay que tener instalado la máquina virtual de Java(jdk1.6.0_10).

2. Descargar el fichero Windows Service Installer desde http://tomcat.apache.org/download-60.cgi

3. Desempaquetamos el fichero en algún directorio. Esto debería crear un archivo installer llamado apache-tomcat-6.0.18.

4. Java ubicación: El instalador utilizará el registro o la variable de entorno JAVA_HOME para determinar la base de un camino de la JRE de J2SE 5.

Ahora veremos pasos por paso las ventanas del installer.

Instalación y Configuración

Page 12: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

12/28

Instalación paso por paso

1. Ventana Principal2. Aceptación de la Licencia

Page 13: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

13/28

Instalación paso por paso

3. Instalación de Componentes.Para instalar los ejemplos hay que hacer click en la casilla.

4. Directorio a donde va a ser instalado.

Page 14: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

14/28

Instalación paso por paso

5. Configuración básica, puerto, username y password.6. Seleccionas el directorio donde esta instalado el JDK de

Java.7. Install.

Page 15: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

15/28

La configuración de Tomcat se basa en dos ficheros:

server.xml - El fichero de configuración global de Tomcat.

web.xml - Configura los distintos contextos en Tomcat.

Ficheros de Configuración

Page 16: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Ficheros de Configuración

server.xml es el fichero de configuración principal de Tomcat. Sirve para dos objetivos:

Proporcionar configuración inicial para los componentes de Tomcat.

Especifica la estructura de Tomcat, lo que significa, permitir que Tomcat arranque y se construya a sí mismo ejemplarizando los componentes especificados en server.xml.

16/28

Page 17: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Ficheros de Configuración

web.xmlHay una pequeña característica de Tomcat que está relacionada con web.xml.

Tomcat permite al usuario definir los valores por defecto de web.xml para todos los contextos poniendo un fichero web.xml por defecto en el directorio conf.

Cuando construimos un nuevo contexto, Tomcat usa el fichero web.xml por defecto como la configuración base y el fichero web.xml específico de la aplicación (el localizado en el WEB-INF/web.xml de la aplicación), sólo sobrescribe estos valores por defecto.

17/28

Page 18: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Estructura de los DirectoriosNombre de

DirectorioDescripción

bin Contiene los scripts de arrancar/parar

conf

Contiene varios ficheros de configuración incluyendo server.xml (el fichero de configuración principal de Tomcat) y web.xml que configura los valores por defecto para las distintas aplicaciones desplegadas en Tomcat.

doc Contiene varia documentación sobre Tomcat (Este manual, en Inglés).

libContiene varios ficheros jar que son utilizados por Tomcat. Sobre UNIX, cualquier fichero de este directorio se añade al classpath de Tomcat.

logs Aquí es donde Tomcat sitúa los ficheros de diario.

srcLos ficheros fuentes del API Servlet. ¡No te excites, todavía! Estoa son sólo los interfaces vacíos y las clases abstractas que debería implementar cualquier contenedor de servlets.

webapps Contiene aplicaciones Web de Ejemplo.

18/28

Page 19: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Estructura de los Directorios

Para hacer una aplicación en Tomcat hay que crear varios ficheros donde estarán los archivos del proyecto.

19/28

Page 20: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Archivos .WAR Toda aplicación en Tomcat se encuentra agrupada en WARS

("Web-Archives"), la estructura de un WAR es definida por Sun (el creador de Java) la cual debe ser implementada en cualquier producto de "Servlet Engine"(Web-Container).

Este tipo de estructura permite portabilidad a las diversas aplicaciones que son desarrolladas .

Cuando se lleva acabo la ejecución de Tomcat éste inspecciona y automáticamente descomprime cualquier archivo WAR que se encuentra bajo el directorio webapps.

Su creacion se hace por medio de la consola de windows/linux (jar cv0f myWebApp.war . ) un IDE ("Integrated Development Environment") o mediante Ant (considerado el MAKE de java).

20/28

Page 21: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Estructura de directorios para las aplicaciones

web• Nombre_de_la_aplicación (Nombre

especifico)(*.html *.jsp *.css )

META-INF (Meta data) WEB-INF (Aquí incluimos el archivo

web.xml)

classes (para guardar los archivos compilados .class)

src (opcional, para guardar las fuentes)

lib (contendrá los .jar externos. ) Esto se incluye en la carpeta “Webapps” de Tomcat

21/28

Page 22: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Estructura de directorios para las aplicaciones

web

21/28

Page 23: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Archivo web.xml

22/30

<?xml version="1.0" encoding="ISO-8859-15"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<web-app> <servlet>

<servlet-name>prueba</servlet-name> <servlet-class>HolaMundo</servlet-class>

</servlet> <servlet-mapping>

<servlet-name>prueba</servlet-name> <url-pattern>hola</url-pattern>

</servlet-mapping> </web-app>

Page 24: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Ventajas de utilizar contenedores

En tiempo de ejecución, el Contenedor Web no tiene que hacer ningún trabajo extra, por que el fichero ya ha sido incluido con anterioridad.

Manejo de la seguridad usando el descriptor XML

Soporte para múltiples peticiones que recibe un servidor multithreading).

Soporte para la realización de páginas dinámicas JSP.

Sin un contenedor web tendríamos que programar a bajo nivel para crear un socket de conexión con el servidor web.

23/28

Page 25: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Diferencias con otros contenedores (Resin)

Tomcat es completamente Open Source, libre de costos.

Resin tiene la versión Profesional y una versión libre Resin Open Source.

En Resin la validación xml es menos estricta: esto quiere decir que el web.xml que trabaja perfectamente en Resin, puede fallar en tomcat.

Para servlets y clases relacionadas, solo hace falta el código fuente en Resin. Compilación/recompilación se hace automático.

24/28

Page 26: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Diferencias con otros contenedores (Resin)

Resin permite montaje rutas de mapeo externas. Esta característica es usada, por ejemplo para localizar JSP's por fuera del .war. Tomcat, en su versión 6 recibió un parche que permitía hacer lo mismo, pero este fue vetado por que iba en contra de la especificación oficial.

Si tu o tu empresa utiliza la versión paga de Resin, puedes obtener completo soporte del staff técnico de Resin. Tomcat solo provee de un foro de discusión.

25/28

Page 27: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Conclusiones

26/28

Tomcat es una gran alternativa open source

No es por nada que tomcat es uno de los contenedores web mas populares y utilizados .

Herramienta Multiplataforma

Portabilidad de las aplicaciones web

Page 28: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Ejemplos

http://localhost/prueba/cags

http://localhost/examples/servlets/

http://localhost/examples/jsp/

Nota: Los vínculos anteriores solo funcionan si tienes instalado Tomcat en el puerto 80 en tu computadora.

27/28

Page 29: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Links de interés

http://tomcat.apache.org/ http://www.webperformanceinc.com/library/reports/ServletRe

port/index.html http://www.programacion.com/tutorial/tomcatintro/ http://wiki.apache.org/tomcat/ http://www.digitalsanctum.com/2007/08/18/20-tips-for-using-t

omcat-in-production/ http://www.jcp.org/en/jsr/detail?id=39 http://en.wikipedia.org/wiki/Comparison_of_web_servers

28/28

Page 30: Apache Tomcat Rafael Emmi Christian Graffe. Agenda  Reseña histórica  ¿Qué es Tomcat?  Conceptos Básicos  Instalación y Configuración de Tomcat para

Gracias