Implantar aplicativo na raiz do Tomcat
1. Visão geral
Neste artigo rápido, discutiremos a implantação de um aplicativo da web na raiz de um Tomcat.
2. Noções básicas e terminologia da implantação do Tomcat
Primeiro, os princípios básicos de implantação de um aplicativo no Tomcat podem ser encontrados neste guia:How to Deploy a WAR File to Tomcat.
Simplificando, os aplicativos da web são colocados em$CATALINA_HOME\webapps, onde$CATALINA_HOME é o diretório de instalação do Tomcat.
O caminho do contexto se refere ao local em relação ao endereço do servidor que representa o nome do aplicativo da web.
Por padrão, o Tomcat deriva do nome do arquivo de guerra implantado. Portanto, se implementarmos um arquivoExampleApp.war, ele estará disponível emhttp://localhost:8080/ExampleApp. I. e. o caminho do contexto é/ExampleApp.
Se agora precisarmos ter esse aplicativo disponível emhttp://localhost:8080/, temos algumas opções, que discutiremos nas seções a seguir.
Para uma explicação mais detalhada do conceito de contexto do Tomcat, dê uma olhada noTomcat documentation oficial.
3. Implantando o aplicativo comoROOT.war
A primeira opção é muito direta:we just have to delete the default /ROOT/ folder in $CATALINA_HOME\webapps, rename our ExampleApp.war to ROOT.war, and deploy it.
Nosso aplicativo agora estará disponível emhttp://localhost:8080/.
4. Especificando o caminho do contexto emserver.xml
A segunda opção é definir o caminho do contexto do aplicativo emserver.xml (que está localizado em$CATALINA_HOME\conf).
Devemos inserir o seguinte dentro da tag<Host> para isso:
Note: defining the context path manually has the side effect that the application is deployed twice by default: emhttp://localhost:8080/ExampleApp/, bem como emhttp://localhost:8080/.
Para evitar isso, temos que definirautoDeploy=”false”edeployOnStartup=”false” na tag<Host>:
Importante: esta opção não é mais recomendada, pois Tomcat 5: torna as configurações de contexto mais invasivas, pois o arquivoserver.xml não pode ser recarregado sem reiniciar o Tomcat.
5. Especificando o caminho de contexto em um arquivo XML específico do aplicativo
Para evitar esse problema comserver.xml, temos a terceira opção: definiremos o caminho do contexto em um arquivo XML específico do aplicativo.
Portanto, temos que criar umROOT.xml em$CATALINA_HOME\conf\Catalina\localhost com o seguinte conteúdo:
Dois pontos não valem nada aqui.
Primeiro, não precisamos especificar o caminho explicitamente como na opção anterior - o Tomcat deriva isso do nome de nossoROOT.xml.
E em segundo lugar - como estamos definindo nosso contexto em um arquivo diferente doserver.xml, nossodocBase deve estar fora de$CATALINA_HOME\webApps.
6. Conclusão
Neste tutorial, discutimos diferentes opções de como implantar um aplicativo Web na raiz de um Tomcat.