El problema es el siguiente: si se instala tomcat en un server con windows 2003 64 bits (pero pareciera que también sobre XP 64 bit), todo parecería proceder sin problemas; y de hecho se puede lanzar tomcat como proceso, pero no como servicio ya que muestra un fantasmagorico "error 2" en el log del servicio jakarta.
Navegando, surfeando, volando e inmergiéndome en la güeb encontré la punta del ovillo, que si no entendí mal sería la siguiente: el programa tomcat, cuando se instala con el instalador de windows (o sea el archivo con extensión "exe" que está en el sitio del download) lo hace a 32 bits, con el consiguiente uso de la "tecnología" wow64. Pareciera que no es posible que un proceso a 32 bit gestione un servicio en Windows 64 bit.
Para la posteridad, y para todos los desesperados del planeta que estén buscando la solución y aún no la hayan encontrado, dejo la resolución de este problema en el blog; pero para no traicionar la vocación sarcástica, la presentaré como una receta de la abuela.
Ahí vá (leer con la música de "utilisima" de fondo):
RECETA DE LA INSTALACIÓN DE TOMCAT COMO SERVICIO EN UN SERVER x64 (está para tomcat 5.5.27, pero funciona con todas)
INGREDIENTES:
- archivo descargado desde tomcat.apache.org con la versión de tomcat deseada (pero no la autoinstalante sino la versión comprimida en un archivo zip)____________________ 1 (uno)
- archivo descargado desde microsoft.com con el instalador de la versión de runtime de visual c++ 2005 x64 ______________________ 1 (uno)
- archivos binarios compilados en 64 bit, descargados desde tomcat.apache.org ________________ 2 (dos) o sea tomcat 5w.exe y del subdirectorio que corresponda (AMD64 si el procesador es amd, y IA64 si es intel), el archivo tomcat5.exe
- tiempo ______________________ cantidad necesaria (mucho)
- paciencia _____________________________ cantidad necesaria
RECETA
- instalar el runtime de visual c++2005 (ojo que no avisa que terminó la instalación, simplemente desaparece la pantalla de instalación)
- NO ES NECESARIO REINICIAR (si, como diría Ripley, "es verdad aunque usted no lo crea")
- descompactar el zip de tomcat en algún directorio (las reglas no escritas dirían que se descompacta en el directorio "program files", vamos a suponer que se siguen las reglas
- (esto no es nes-sario -como decía un antiguo presidente- pero es bueno para simplificar) cambiar el nombre del directorio descompactado en algo más corto como por ejemplo "apache-tomcat"... quedará ahora copiado tomcat en el directorio C:\Program Files\apache-tomcat (para los pasos siguientes vamos a suponer que así quedará)
- copiar en el directorio bin de apache los binarios descargados (ej: en C:\Program Files\apache-tomcat\bin copio los archivos tomcat5.exe y tomcat5w.exe)
- como ya existían esos archivos (la versión 32 bit), el sistema operativo va a preguntar si queremos sobreescribirlos... por supuesto, contestar que si (para eso estamos haciendo todo este quilombo)
configurar la variable de entorno JAVA_HOME al directorio donde está instalado java (en mi caso C:\Program Files\Java\jdk1.6.0_06)... esto se hace desde las propiedades de MI PC (ver figura al lado)
- abrir una shell mediante "run" -> "cmd"
- ubicarse en el directorio donde se copiaron los archivos binarios ( cd C:\Program Files\apache-tomcat\bin)
- ejecutar " service.bat install"... esto instalará el servicio "Tomcat5"
- probar a iniciar el servicio "tomcat5" (NET START TOMCAT5)

