2010-03-23 24 views
5

¿Cuál es la forma correcta de volver a implementar una nueva versión de una aplicación en ejecución en glassfish? Tengo una GUERRA corriendo, y he hecho cambios. Pensé que hacer una implementación de undeploy + podría ser lo correcto, pero glassfish (v3) a menudo se cuelga cuando no lo despliegue.Glassfish war lifecycle question

¿Cuál es la forma correcta de volver a implementar una aplicación en ejecución en glassfish?

Respuesta

4

Hay una serie de formas de volver a implementar una aplicación web en GlassFish v3.

El método que recomendaría es 'reimplementación de asadmin --name foo --properties keepSessions = true foo.war' (o el despliegue de directorio para el uso de aplicaciones web ...)

se puede ver en la man page for the deploy subcommand of asadmin para aprender más sobre los detalles.

Apenas me desaplico y luego despliego .... lleva demasiado tiempo.

Casi nunca creo un archivo de punto-guerra .... Suelo hacer un despliegue de directorio, lo que elimina el tiempo que se usaría para crear y luego explotar el archivo war.

Al usar la distribución de directorios, también puedo aplicar ajustes a los archivos jsp y probarlos sin un paso de reconstrucción/despliegue.

Me gusta usar la propiedad keepSessions mientras estoy desarrollando. No sé si esta propiedad sería útil en una situación de producción.

El método que describió probablemente no debería bloquear el servidor ... Por favor presente un problema al https://glassfish.dev.java.net/servlets/ProjectIssues para que la gente en el equipo pueda rastrear cuál podría ser el problema.

+0

@vkraemer - Grandes consejos, gracias. – Robot

0

No sé por qué v3 debería ser diferente, pero en v2 eso es exactamente lo que hacemos. Primero desplegamos y luego implementamos de nuevo.

¿Utiliza la GUI de administrador o asadmin (línea de comando) para hacer esto? ¿El comportamiento es el mismo en ambos sentidos?

2

undeploy medio de retirada todos los rastros de una aplicación web:

  • su cargador de clase
  • compilado JSP
  • archivo
  • persistió sesiones HTTP

¿Cuándo se produce el problema? ¿GlassFish realmente se cuelga? Puede darnos más detalles.


Para el registro, GlassFish v3 tiene un comando redeploy:

asadmin redeploy --name mywar mywar.war 

Pero desde redeploy = undeploy + deploy, esto no va a resolver su problema.

+0

Bueno, no * todo * ... en Windows no puede eliminar los archivos jar en WEB-INF/lib, por lo que se quedan. Muy desconcertante cuando lo vi por primera vez hasta que vi la lista de archivos obsoletos. :-) – Snekse