 Tutoriales
Tomcat - Introducción
Trabajar con el Servicio Jakarta para NT
El servicio NT de Jakarta es un ejecutable que envuelve el contenedor de Servlets Tomcat y lo ejecuta como un servicio NT. Para instalarlo necesitamos:
- Obtener el ejecutable (jk_nt_service.exe)
- Descargar el ejecutable desde el directorio win32/i386 encontrado donde descargamos la Distribución Binaria de Tomcat. Para aquellos que usan Netscape como navegador, intentar descargar una versión Zip del fichero, si está disponible. Peude haber problemas usando Netscape para descargar ficheros DLL.
- Personalizar un fichero de propiedades que le proporcione al servicio información sobre Tomcat (wrapper.properties).
- Localizamos la plantilla del fichero wrapper.properties en nuestro directorio Tomcat.
- Modificamos la propiedad wrapper.tomcat_home para que apunte a nuestro home Tomcat
- Modificamos la propiedad wrapper.java_home para que apunte a nuestro home Java.
- Instalar jk_nt_service ejecutándolo con la bandera -i.
- Ejecutamos jk_nt_service -I <name of service> <path to updated wrapper properties>
- <name of service> debería ser una sola palabra (sin espacios) como Jakarta
- <path to updated wrapper properties> debería apuntar a nuestro fichero wrapper.properties (y el servicio comprobará su existencia).
- Por ejemplo, una línea de comandos válida podría ser: jk_nt_service -I Jakarta wrapper.properties
- Arrancar Tomcat como un Servicio.
- Desde la línea de comandos, ejecutamos: net start <name of service> (por ejemplo:
net start Jakarta)
- Desde el applet de servicios de NT, seleccionamos nuestro servicio y pulsamos start
Nota:
Si la localización del fichero log en nuestro fichero wrapper.properties apunta a un directorio que no existe, debemos crearlo antes de arrancar el servicio.
- Para el servicio Tomcat.
- Desde la línea de comandos, ejecutamos: net stop <name of service> (por ejemplo, net stop Jakarta)
- Desde el applet de servicios de NT, seleccionamos nuestro servicio y pulsamos stop
Nota especial:
El servicio Tomcat usa AJPV12 para realizar operaciones de limpieza durante su cierre y deberíamos asegurarnos de que el conector AJPV12 está definido en nuestro server.xml. En ausencia de un puerto AJPV12 configurado el servicio Tomcat se cerrará abruptamente (es decir será asesinado) sin hacer ninguna operación de limpieza
Nota para usuarios del JDK 1.3:
Hay un problema conocido en el JDK 1.3 que afecta a las aplicaciones Java que se ejecutan como servicios NT. El bug hace que el servicio termine cuando el usuario actual sale del sistema. La forma más simple de evitar este problema es usar el JDK 1.2. Si nuestra aplicación requiere características del JDK 1.3 podemos echar un vistazo a
javaserv o
JavaService.
Para eliminar el servicio instalado ejecutamos: jk_nt_service -R <name of service>
Configuración Avanzada
- Modificar las propiedades del servicio NT Tomcat. Por defecto el servicio se ejecutará en modo manual bajo la cuenta de usuario del sistema local. Para modificar esto, abrimos el applet de servicios de NT, seleccionamos nuestro servicio y pulsamos startup. Se abrirá una ventana que nos permitirá personalizar el servicio a nuestro gusto.
- Modificar el classpath. El classpath está determinado por las propiedades wrapper.class_path, para modificarlo, sólo tenemos que añadir/eliminar/modificar líneas wrapper.class_path.
El classpath completo se calcula concatenando todas las líneas wrapper.class_path poniendo un ";" entre ellas.
- Ejecutar varios ejemplares de Tomcat. Digamos que queremos ejecutar un Tomcat para producción y otro para desarrollo. Todo lo que necesitamos es instalar dos veces el servicio Tomcat pero bajo nombres diferentes (y con diferentes ficheros wrapper.properties y server.xml).
- Debemos asegurarnos de que los conectores AJPV12 y HTTP están modificados en cada server.xml para evitar conflictos.
- Debemos asegurarnos de actualizar la propiedad wrapper.shutdown_port en wrapper.properties para que apunte a los puertos AJPV12 corectos (por defecto es 8007).
- Modificar la línea de comandos usada para arrancar Tomcat. El servicio Tomcat toma toda la configuración de su línea de comandos de wrapper.properties! Para personalizar la línea de comandos, editamos la propiedad wrapper.cmd_line y nos aseguramos de que es una línea de comandos Java legal.
|
|
|