Si implemento un archivo war en Tomcat, llamado por ejemplo foo-bar-1.1.2.war , ¿cómo puedo implementarlo para que se extraiga en webapps / bar y su URL raíz sea / bar / ... ?
Mi intención aquí es mantener el archivo war en el servidor de aplicaciones web con la información de su versión para saber qué versión está instalada pero sobrescribir una versión anterior de la aplicación.
Podría implementar el archivo war usando PSI Probe . Esto me permitiría especificar un contexto de destino para la aplicación web. Sin embargo, significa que perdería cualquier información de versión en el nombre del archivo war.
Tomcat siempre extraerá el contenido de un archivo de guerra, a una carpeta con el mismo nombre (cuando está configurado para implementar guerras, por defecto, etc.).
Puede extraerlo a un nombre de carpeta de su elección. Entonces, si descomprime el contenido de foo.war
en una carpeta llamada bar/
manualmente, en lugar de simplemente colocar la guerra en la carpeta de aplicaciones web, todavía cargará la aplicación web.
Sin embargo, esto es totalmente innecesario, ya que puede especificar el patrón de URL de la aplicación sin jugar con el nombre del archivo de carpeta / war anulando el elemento raíz de contexto para su aplicación:
Esto a menudo se establece en el Tomcat server.xml
, pero esa práctica se desaconseja bastante. En su lugar, le sugiero que use context.xml
en la carpeta META-INF de su aplicación web / archivo war:
<Context path="/bar" .../>
Cuando se implementa la aplicación, se context.xml
debe copiar /conf/Catalina/localhost
pero cambiar el nombre afoo.xml
Tenga en cuenta que las raíces de conext deben ser únicas y hay algunas consideraciones adicionales si está utilizando las operaciones autoDeploy
o deployOnStartup
(Fuente http://tomcat.apache.org/tomcat-7.0-doc/config/context.html ).
Otras opciones incluyen:
foo-1.1.0
guerra.foo/version1
También puede usar Ant (o una herramienta equivalente) para automatizar sus implementaciones (y realizar cualquiera de las anteriores).
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras