Instalación
Lo primero que voy a hacer es instalar Tomcat6 en debian Squeeze y el jre de Sun. En mi caso he instalado la versión tomcat6 descargada desde los repositorios. Es posible descargar tomcat6 y alguna versión más reciente desde la pagina oficial:
La gran diferencia entre instalar desde los repositorios o de la página oficial, es que en esta última debemos definir nosotros las variables de entorno como es el caso de las variables:
CATALINA_BASE = Es el directorio donde se van a guardar las aplicaciones. El cual tiene este nombre desde la versión de tomcat 4.0.
CATALINA_HOME = directorio de instalación de Jakarta-Tomcat, en el se encuentran los ejecutables y las librerías de tomcat(directorio bin y lib).
Siguiendo con la instalación:
#aptitude install tomcat6
#aptitude install sun-java6-jre
Comprobar que se está utilizando el jre de sun
Ejecutamos:
#update-alternatives --config java
Resultado:
root@trunk:/etc/tomcat6# update-alternatives --config java
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
Press enter to keep the current choice[*], or type selection number: 2
Elijo la opción 2.
update-alternatives: using /usr/lib/jvm/java-6-sun/jre/bin/java to provide /usr/bin/java (java) in manual mode.
Comprobación del funcionamiento
Voy a comprobar que tomcat está escuchando peticiones. Para eso voy a instalar lsof(list open files), lo cual me va a permitir saber por que puerto esta escuchando peticiones tomcat, si es que está escuchando.
#aptitude install lsof
Ahora voy a ejecutar el comando con las opciones “-i” y ”-P”
Opciones:
- - -i --> Lista por sockets ip
- - -p (numero de proceso) --> Lista por un PID determinado
- - -P --> Lista por numero de puertos
#lsof -i -P
Esta es la linea que devuelve el comando, con respecto a tomcat:
java 870 tomcat6 29u IPv6 3376 0t0 TCP *:8080 (LISTEN)
Ahora, escribimos en la barra del navegador:
http://trunk:8080
trunk es mi servidor tomcat.
Este es el mensaje que muestra la página resultante:
"IT WORKS!"
Esta página, además, nos muestra información sobre algunas cosas, por ejemplo documentación, directorio por defecto de CATALINA_BASE Y CATALINA_HOME, etc.
Si aparece esta página, significa que tomcat está sirviendo páginas correctamente.
Podemos cambiar el puerto por el que escucha tomcat. Para ello nos vamos a editar el fichero de configuración del servidor:
#nano /etc/tomcat/server.xml
Una ves en el nos vamos a la línea:
port="8080" minProcessors="5" maxProcessors="75"
Solo tenemos que cambiar el 8080 por el puerto que elijamos, pero debemos comprobar que ningún proceso este utilizando ese puerto.
Ahora solo hay que reiniciar el servicio.
#/etc/init.d/tomcat6 restart
Lanzar aplicación
Hay que recordar que nuestras variables de entorno ya se definieron al instalar tomcat.
Variables:
CATALINA_HOME:/usr/share/tomcat6
CATALINA_BASE: /var/lib/tomcat6
Voy a utilizar un Servlet el cual voy a llamar: “myservletWAR.war”, el cual he descargado desde internet.
Lo primero que hay que hacer es copiar el .war descargado a nuestro directorio de trabajo o dicho de una forma mas correcta: CATALINA_BASE.
*Nota*En este directorio, los archivos .war(son archivos comprimidos de java) se descomprimen automáticamente.*
Hago un listado del directorio.
root@pepmourinho:/var/lib/tomcat6/webapps# ls -la
drwxrwxr-x 5 tomcat6 tomcat6 4096 Dec 25 20:11 .
drwxr-xr-x 6 root root 4096 Dec 21 13:03 ..
drwxr-xr-x 3 root root 4096 Dec 21 13:04 ROOT
drwxr-xr-x 5 tomcat6 tomcat6 4096 Dec 25 20:11 myServletWAR
-rw-r--r-- 1 root root 6841 Dec 25 20:11 myServletWAR.war
drwxr-xr-x 5 tomcat6 tomcat6 4096 Dec 21 13:30 sample
-rw-r--r-- 1 root root 4606 Sep 4 21:53 sample.war
Vemos el directorio myServletWAR, el cual se ha creado como el resultado de descomprimir el .war.
Ahora, solo tenemos que abrir el navegador y escribir: “http://trunk:8080/myServletWAR/”, para comprobar que funciona.
Esta es la aplicación corriendo en el navegador, lo cual demuestra que esta sirviendo nuestra aplicación correctamente.
De está forma doy por concluida la práctica, para mas información hay un gran manual en la wiki de tomcat, aquí pongo el enlace:
http://wiki.apache.org/tomcat/FrontPage