Como crear una nueva Zona en Tomcat

Tomcat (también llamado Jakarta Tomcat o Apache Tomcat) funciona como un contenedor de servlets desarrollado bajo el proyecto Jakarta en la Apache Software Foundation. Tomcat implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Sun Microsystems.

Tomcat es un servidor web con soporte de servlets y JSPs. Tomcat no es un servidor de aplicaciones, como JBoss o JOnAS. Incluye el compilador Jasper, que compila JSPs convirtiéndolas en servlets. El motor de servlets de Tomcat a menudo se presenta en combinación con el servidor web Apache.

Tomcat puede funcionar como servidor web por sí mismo. En sus inicios existió la percepción de que el uso de Tomcat de forma autónoma era sólo recomendable para entornos de desarrollo y entornos con requisitos mínimos de velocidad y gestión de transacciones. Hoy en día ya no existe esa percepción y Tomcat es usado como servidor web autónomo en entornos con alto nivel de tráfico y alta disponibilidad.

Dado que Tomcat fue escrito en Java, funciona en cualquier sistema operativo que disponga de la máquina virtual Java.

  • Dentro del directorio /var/lib/tomcat5/webapps/ crear un directorio con el nombre de la nueva zona. Ej: # mkdir aplicacion-reportes
    • Crear los subdirectorios META-INF y WEB-INF
    • Dentro de META-INF ubicar el context.xml provisto por desarrollo, o, si no fue provisto, crear META-INF/context.xml
# context.xml
<?xml version='1.0' encoding='utf-8'?>
<Context docBase="/var/lib/tomcat5/webapps/aplicacion-reportes/" path="/aplicacion-reportes"
        debug="5" reloadable="false" allowLinking="true" swallowOutput="true">
</Context>
    • Dentro de WEB-INF/ se alojan los archivos propios de la aplicación que se está desarrollando.
    • Hay que crear un Link simbolico desde el context.xml que esta en la nueva zona a /var/lib/tomcat5/conf/catalina/localhost/aplicacion-reportes.xml
  • Crear la configuración de Apache necesaria para poder montar le zona via el modulo JK (libapache2-mod-jk).

Siguiendo con el ejemplo /etc/apache2/sites-available/aplicacion-reportes: una entrada para la nueva zona con la siguiente sintaxis:

# Zona Tomcat de Desarrollo Aplicaion Reportes apuntando al conector 'ayen-desa'
<IfModule mod_jk.c>
        JkMount /aplicacion-reportes         server-desa
        JkMount /aplicacion-reportes/*       server-desa
</IfModule>
    • La primer parte, ‘aplicacion-reportes’, define el nombre del mapeador con el cual se accederá a la zona.
    • La segunda parte, ‘server-desa’, es con el cual se ha configurado el conector JK.

Esto figura en /etc/libapache2-mod-jk/workers.properties:

worker.list=server-desa
worker.ayen-desa.port=8209
worker.ayen-desa.host=localhost
worker.ayen-desa.type=ajp13
  • Los archivos de registro de actividades se encuentran en /var/log/tomcat5/. Por defecto se crean catalina_AAAA-MM-DD.log, y localhost_AAAA-MM-DD.log en caso de que la aplicación expulse un error y como se hayan configurado las aplicaciones dentro de los contenedores.
    • catalina_AAAA-MM-DD.log <—- Registro de Tomcat: carga de modulos, Zonas, etc.
    • localhost_AAAA-MM-DD.log <— Registro de Aplicaciones contenidas: fallas de rutina de conexión a DB, etc.
  • Activar el montaje de la zona:
# a2ensite aplicacion-reportes
Site aplicaion-reportes installed; run /etc/init.d/apache2 reload to enable.
  • Reiniciar Apache: # /etc/init.d/apache2 restart
  • Reiniciar Tomcat: # /etc/init.d/tomcat5 restart
  • Ir por un café

Leave a Reply

*