Breve Introducción

Como en cualquier aplicación, la mejor manera de empezar es a través de una revisión de la documentación. Sin embargo, con el deseo de hacer uso del Wrapper rápidamente, le recomendamos leer esta página para tener una idea sobre como funciona el Wrapper.

Para poner su aplicación en marcha, usted tendrá por lo menos que leer la sección de Resumen de los Métodos de Integración. Se le presentarán los 4 Métodos de Integración. A partir de cada descripción, podrá elegir la que mejor se adapte a sus necesidades y luego proceder a leer la sección dedicada a ese Método de Integración.

[Para las funciones avanzadas del Wrapper]: El Wrapper ofrece un extenso conjunto de funciones. Sugerimos que usted revise las Propiedades de Configuración en su totalidad para tener una idea de lo eficaz y gran ayuda que el Java Service Wrapper le ofrece.

[¿Necesita ayuda?]: Si experimenta algún problema o tiene dudas, la mejor manera de recibir ayuda es publicar un mensaje en la lista de usuarios del Wrapper (Wrapper-User Mailing List).

Descripción de las Características del Wrapper

El Java Service Wrapper es una aplicación que ha evolucionado a partir del deseo de resolver una serie de problemas comunes en aplicaciones Java. A continuación encontrará las principales características del Wrapper: Algunas funciones del Wrapper son:

Ejecutar una aplicación Java como un Servicio de Windows o como Demonio UNIX

El Java Service Wrapper permite instalar una aplicación Java como un servicio de Windows. De la misma manera, los scripts incluidos con el Wrapper también hacen que sea muy fácil de instalar una aplicación Java como un proceso Demonio en sistemas UNIX.

El Wrapper maneja correctamente los fines de sessión de los usuarios en Windows, dependencias de servicio y la capacidad para ejecutar los servicios que interactúen con el escritorio.

Por favor, visite las páginas a seguir para instrucciones:

Confiabilidad en Aplicaciones Java

Conforme el uso de Java se expande, sus aplicaciones se han escrito para proporcionar una variedad de servicios críticos y de misión. Estos servicios deben ser capaces de proporcionar un alto nivel de confiabilidad. En un mundo ideal, sólo el software que es 100% libre de errores podrá ser liberado e instalado. Sin embargo, históricamente se ha demostrado que este no es el caso. Casi todas las aplicaciones sufren problemas de calidad en un momento u otro durante su ciclo de vida. Aplicaciones sufren congelamientos (Freezes), dejan de funcionar (Crash), se quedan sin memoria o sufren muchos otros problemas. Siempre que sea posible, los problemas se resolverán rápidamente sin que haya interrupciones significativas del servicio. Sin embargo, hay ocasiones en las que solucionar un problema puede ser altamente costoso o imposible de resolver en un corto período de tiempo.

El Wrapper supervisa el proceso de la JVM y se reinicia automáticamente si la JVM se ha congelado o ha dejado de funcionar. Este proceso toma sólo unos pocos segundos una vez que el Wrapper ha detectado que existe un problema. Hay también una manera de configurar el Wrapper para monitorear la salida de datos de la consola de la JVM y reaccionar a ciertas cadenas reiniciando o apagando la JVM.

Aunque estas características avanzadas del Java Service Wrapper no harán desaparecer todos los problemas, ellas le ayudarán a dormir tranquilo sabiendo que si hay un problema, el Wrapper estará listo para mantener las cosas en marcha hasta que pueda llegar a la oficina y revisar los registros de datos. ¡Diga adiós a llamadas de emergencia!

Script Estándar, Listo Para Usar

Java ha comercializado un lenguaje de programación denominado "Write Once, Run Everywhere", (escriba una vez y ejecute configuraciones en todas partes). Si bien esto es cierto para muchos aspectos de una aplicación, el desarrollador tiene la necesidad de escribir secuencia de comandos complejos para una plataforma específica, teniendo la tarea de construir rutas de clase y recabar información necesaria del sistema para iniciar una aplicación.

El Java Service Wrapper ayuda al desarrollador con problemas en los que se encuentre, proporcionando un conjunto de scripts para una amplia gama de plataformas que se pueden usar para iniciar y ejecutar casi cualquier aplicación Java controlada por el Wrapper.

El Wrapper mueve toda la configuración de la JVM en un archivo de configuración de plataforma independiente wrapper.conf. Para más detalles, visite los ejemplos en la sección Resumen de los Métodos de Integración.

Renicios Solicitados

El Java Service Wrapper proporciona una manera para que una aplicación Java solicite que su propia JVM sea reiniciada. Esto puede ser útil en algunos casos. Aplicaciones pueden querer reiniciar después de haber tenido sus archivos de configuración modificados. En otras situaciones, la aplicación simplemente puede necesitar ser reiniciada para evitar problemas como pérdida de memoria o de recursos de algún tipo.

Reinicios de la JVM se pueden desencadenar desde la JVM, haciendo un llamado a WrapperManager.restart(). Para más detalles, por favor visite WrapperManager.restart() en JavaDocs.

También hay formas más pasivas para desencadenar reinicios. El Wrapper tiene la capacidad de monitorear la salida de datos de la consola y desencadenar apagados y/o reinicios cuando se detecte un texto determinado.

El Wrapper puede ser configurado para reiniciar otra instancia de la JVM o apagarla normalmente dependiendo del código de salida (exit code) devuelto por una JVM.

Configuración Flexible

El Java Service Wrapper proporciona una amplia gama de propiedades de configuración que se pueden utilizar para configurar la JVM de todas formas posibles a partir de la línea de comandos. El archivo de configuración del Wrapper "wrapper.conf" también ofrece una serie de propiedades que le permite configurar funciones como el registro de datos, además de cómo es instalado el Wrapper como un Servicio.

Visite la sección Propiedades de Configuración para ver más detalles de lo que el Wrapper puede hacer. Asegúrese de haber leído la sección Resumen de los Métodos de Integración antes de continuar con el archivo de configuración wrapper.conf.

Facilidad de Instalación de Aplicaciones

Al usar los scripts estándar del Wrapper y rutas de aceso relativas en el archivo de configuración wrapper.conf, generalmente es posible crear una aplicación que no requiere ninguna instalación complicada y simplemente expandir un archivo comprimido en un directorio elegido por el usuario.

Registro de Valores

Mientras que el Java Service Wrapper no pretende, ni debe, sustituir cualquiera de las Herramientas de Registro disponibles, el Wrapper proporciona una serie de propiedades para configurar como se maneja la salida de datos "stdout" y "stderr" a la consola de la JVM.. Esta salida de datos se puede registrar a cualquier combinación de la consola, un archivo, o al "Registro de Eventos" (Windows), así como a "syslog" (UNIX).

Registrar la salida de datos a la consola de la JVM puede ser fundamental para el seguimiento de problemas de una aplicación. Sin el Wrapper, cuando una JVM se ejecuta como un Servicio de Windows o como un demonio en UNIX, la salida de datos de la consola normalmente se perdería. El Wrapper asegura de que toda la salida de datos de la consola se registre.

Herramientas de Registro basadas en Java sólo son capaces de registrar la salida generada desde la JVM. Por ejemplo, si la JVM se bloquea o imprime mensajes de bajo nivel, tales como vertederos de memoria, normalmente no hay manera de registrarlos. El Wrapper registra todos los registros de valores de la JVM sin importar su fuente, lo que significa que el registro de cualquier bloqueo (crash) se mantendrá incluso después de que el Wrapper haya reiniciado la JVM.

Para más detalles, visite la sección de Configuración de Registro de Valores.

Máquinas JVMs (Máquinas Virtuales Java) Compatibles

Es de nuestro conocimiento que el Wrapper funciona con Oracle, OpenJDK, IBM, Blackdown y BEA WebLogic JRockit JVMs sin ningún problema. Si tiene la oportunidad de probar cualquier otra JVM, agradeceremos si nos hace saber los resultados.

Las versiones 3.4.0 o posterior del Java Service Wrapper requieren que la versión de la JVM sea por lo menos 1.4.x. (Versiones previas a 3.4.0 del Wrapper eran compatibles hasta versiones de JVM 1.2.x.)

NOTA

El Wrapper se puede utilizar con versiones 1.2.x de Java. Sin embargo, algunas funciones están desactivadas debido a la falta de soporte de esta versión Java a Shutdown Hooks. Shutdown Hooks se implementaron con la liberación de Java 1.3.0.

NOTA

Monitorear Interbloqueo de Subprocesos requiere usar por lo menos, la Versión Java 1.5. JVMs previas ignorarán dichos monitoreos.

El Java service Wrapper ha sido probado y es compatible con Java 21.

Plataformas Compatibles

Las distribuciones binarias del Java Service Wrapper son compatibles con la siguiente lista de plataformas y están disponibles en la página de Descargas.

Sólo versiones de sistemas operativos con los que se sabe que el Wrapper es compatible se encuentran en la siguiente lista. Si usted ha tenido resultados exitosos o lo contrario al ejecutar el Wrapper en otras versiones de sistemas operativos, por favor infórmenos y se agregará a la lista.

En realidad debería ser bastante fácil de construir el Wrapper desde la fuente en plataformas adicionales de UNIX. Avísenos y actualizaremos la lista.

Por Versión del Wrapper:

En esta sección se hará un seguimiento de las dependencias de la plataformas que son compatibles con el Wrapper. Después de liberar versiones nuevas, agregaremos una lista de plataformas actualizadas que sean compatibles con el Wrapper. Visite las páginas a seguir con las listas de plataformas compatibles y posibles restricciones.