Los subtemas siguientes describen diversas situaciones en las que puede ser necesario reiniciar el servidor.
En el entorno de desarrollo, puede que desee cambiar una aplicación mientras se ejecuta en un servidor, por ejemplo, si está depurando una aplicación en un servidor. En algunos casos, puede recargar de forma dinámica el código modificado sin reiniciar el servidor. Es posible que pierda el estado del programa, dependiendo del tipo de recurso que se ha modificado y el tipo de servidor.
Cuando una aplicación se ejecuta en un servidor y el usuario cambia el código, la máquina virtual Java™ sigue ejecutando el código inicial hasta que el código se vuelve a cargar automáticamente o manualmente. Por ejemplo, puede modificar un fuente de JSP y los cambios se recargarán de forma automática en el servidor. Para otros recursos, tales como clases Java que se ejecutan en Tomcat, debe reiniciar el servidor para asegurarse de que el servidor reconozca los cambios.
Si cambia el servidor o la configuración del servidor mientras el servidor está en ejecución, por ejemplo, si cambia el número de puerto, debe reiniciar el servidor.
Si realiza cualquier cambio en un archivo JSP, HTML, GIF, JPG o archivo de recursos similar, cuando guarda el archivo mientras el servidor está en ejecución, debe publicar la aplicación en el servidor. Emitir un mandato de publicación es especialmente importante si los cambios en el archivo de recursos se realizan en un recurso enlazado, que pueden ser un archivo o carpeta que está almacenado en un lugar del sistema de archivos situado fuera del espacio de trabajo. Los cambios en recursos enlazados no pueden ser detectados por el entorno de trabajo o el servidor pues los cambios se han producido fuera del espacio de trabajo.
Para obtener más información sobre la publicación automática o manual en el servidor, consulte el tema Publicar la aplicación.
Si cambia un servlet y guarde el archivo mientras el servidor está en ejecución, el servlet se vuelve a cargar, si habilita la recarga para esa aplicación. Cuando el servidor se ejecuta en la modalidad de sustitución dinámica1, los cambios se producen automáticamente sin necesidad de renovar el navegador. El servidor reconoce el cambio al publicar la aplicación en el servidor. Si se renueva el navegador web, el estado de la aplicación no se pierde.
Para publicar la aplicación en el servidor, puede esperar a que transcurra el intervalo de publicación automática o publicar la aplicación manualmente (pulse con el botón derecho del ratón en el servidor en la vista Servidores y seleccione Publicar). Para obtener más información sobre la publicación automática o manual en el servidor, consulte el tema Publicar la aplicación. Los datos de la sesión para ese proyecto se pierden, pero el estado de otros proyectos dentro de la aplicación se conserva. Puede reiniciar el proyecto desde el menú contenido en la vista Navegador. Si está ejecutando Tomcat y no ha habilitado la función de recarga, debe reiniciar el servidor.
Para WebSphere Application Server, las reglas también se aplican a cualquier clase dependiente o descriptor de despliegue del proyecto web. Si modifica las propiedades de configuración de seguridad o inicio de sesión del descriptor de despliegue web.xml que se ejecuta en WebSphere Application Server, necesita reiniciar el servidor. En Tomcat, es necesario reiniciar el servidor para cualquiera de estos cambios.
Si añade un servlet, clase dependiente o archivo JSP a un proyecto web mientras el servidor está en ejecución, los cambios se reconocen si ha habilitado la función de recarga. Si no ha habilitado la función de recarga, debe publicar la aplicación y reiniciar el proyecto EAR si está ejecutando WebSphere Application Server, o publicar la aplicación y reiniciar el servidor si está ejecutando Tomcat. Para publicar la aplicación en el servidor, puede esperar a que transcurra el intervalo de publicación automática o publicar la aplicación manualmente (pulse con el botón derecho del ratón en el servidor en la vista Servidores y seleccione Publicar). Para obtener más información sobre la publicación automática o manual en el servidor, consulte el tema Publicar la aplicación. Cuando el servidor ejecuta la función de sustitución dinámica en la modalidad de depuración, los cambios en las clases Java se reconocen automáticamente.
Para WebSphere Application Server, el servidor reinicia dinámicamente el proyecto EJB contenido en el archivo EAR. Cuando el servidor ejecuta la función de sustitución dinámica en la modalidad de depuración, los cambios en las clases Java se reconocen automáticamente.
Para WebSphere Application Server, si cambia algún recurso dentro de un proyecto de aplicación empresarial mientras se ejecuta en el servidor, el servidor reinicia dinámicamente el archivo EAR. Tomcat no da soporte a la prueba y publicación del proyecto de aplicación empresarial.
Recurso modificado | Acción necesaria | |||
---|---|---|---|---|
WebSphere Application Server | Apache Tomcat | WebSphere Application Server Express | ||
Configuración del servidor | Mismo comportamiento que el WebSphere Application Server autónomo; para obtener detalles, consulte el Information Center de WebSphere Application Server | Reiniciar el servidor | Reiniciar el servidor | |
JSP | Renovar el navegador web | Renovar el navegador web | Renovar el navegador web | |
Servlet | Recarga habilitada | Renovar el navegador web | Renovar el navegador web | Renovar el navegador web |
Recarga inhabilitada | Reiniciar el proyecto EAR o el servidor | Reiniciar el servidor | Reiniciar el proyecto EAR o el servidor | |
Clases dependientes o descriptores de despliegue | Recarga habilitada | Renovar el navegador web | Renovar el navegador web | Renovar el navegador web |
Recarga inhabilitada | Reiniciar el proyecto EAR o el servidor | Reiniciar el servidor | Reiniciar el proyecto EAR o el servidor | |
Implementación EJB | Se recarga automáticamente | No soportado | No soportado | |
Interfaz EJB o clases dependientes de la interfaz | Se recarga automáticamente. Reinicie el cliente de aplicaciones si éste mantiene una referencia al EJB. | No soportado | No soportado | |
EJB, clases dependientes o descriptores de despliegue | Se recarga automáticamente | No soportado | No soportado | |
EJB o clase dependiente añadida | Se recarga automáticamente | No soportado | No soportado | |
Archivo EAR | Se recarga automáticamente | No soportado | Renovar el navegador web |