El documento 6.0 Tomcat en http://tomcat.apache.org/tomcat-6.0-doc/config/context.html dice:gestión de contexto Tomcat
Sólo si un archivo de contexto no existe para la aplicación en el
$CATALINA_BASE/conf/[enginename]/[hostname]/
, en un archivo individual en/META-INF/context.xml
el interior de los archivos de la aplicación. Si la aplicación web está empaquetada como GUERRA, entonces/META-INF/context.xml
se copiará al$CATALINA_BASE/conf/[enginename]/[hostname]/
y se renombrará para que coincida con la ruta de contexto de la aplicación. Una vez que este archivo existe, no será reemplazado si se coloca un WAR nuevo con un/META-INF/context.xml
más reciente en la base de datos del host.
Sin embargo, me di cuenta de que si se pone nuevo archivo de la guerra en el directorio webapp, la context.xml
en META-INF
directorio reemplaza context.xml
en $CATALINA_BASE/conf/[enginename]/[hostname]
.
¿Hay alguna configuración que asegure que context.xml
en $CATALINA_BASE/conf/[enginename]/[hostname]/
no se sobrescribe cada vez que se despliega un nuevo archivo de guerra?
Editar: estoy usando autodeploy = "true" A partir de la observación de Josek, entiendo cuando Tomcat ve nuevo archivo de la guerra, se repliega la aplicación de edad (que conduce a la eliminación del archivo de contexto) y despliega el nuevo archivo de la guerra (lo que lleva a la creación de un nuevo archivo de guerra). En ese caso, la información anterior del documento de tomcat no es relevante. La nueva pregunta puede haber alguna situación donde lo anterior puede suceder?
¿Cómo se está implementando en Tomcat? ¿Manualmente o usando un complemento IDE (Eclipse)? – BalusC
Manualmente. Creo el archivo war y lo muevo al directorio webapp. – Hemang
¿Tiene el atributo 'autoDeploy' establecido en el elemento' host' en 'server.xml'? Intenta configurar eso en falso. – matt