Editei o arquivo "server.xml" na conf
pasta do Tomcat 8 . Eu adicionei uma nova Host
tag para um novo site.
Devo reiniciar o servidor Tomcat?
Posso fazer o Tomcat analisar e aplicar a nova edição server.xml
?
configuration
tomcat
Basil Bourque
fonte
fonte
<Host>
, não<Context>
.server.xml
é analisada uma vez na inicialização. Não pode ser recarregado sem uma reinicialização.Respostas:
Eu começaria dizendo que a pergunta não foi feita corretamente, pois é possível editar o arquivo sem reiniciar o Tomcat, mas as alterações são ignoradas pelo processo em execução.
A verdadeira questão seria como aplicar alterações
server.xml
sem reiniciar o Tomcat.Reunindo informações do processo de inicialização e das páginas do carregador de classes na documentação on-line do Tomcat, é possível entender isso com mais detalhes.
Mais especificamente, está descrito em serverStartup.txt e no diagrama UML do processo de inicialização e as partes relevantes podem ser resumidas da seguinte forma:
Isso acontece após a criação do carregador de classe Bootstrap do mecanismo de servlet (Catalina).
Com essas informações, fica claro agora quando, no processo de inicialização, o
server.xml
arquivo é analisado, mas na verdade não responde à pergunta de por que é necessário reiniciar o Tomcat para aplicar alterações nesse arquivo.A resposta é que alguma parte dela pode ser modificado dinamicamente em tempo de execução usando JMX . Para que isso seja possível, é necessário registrar o MBean apropriado (etapa b6 acima) e também aceitar operações SET (alguns MBeans possuem apenas uma interface GET).
No seu caso específico, não há como criar e registrar um novo Host em tempo de execução porque não há previsão para isso, e é por isso que você precisa reiniciar o processo do Tomcat para que o carregador de classes do Bootstrap instanciar esse objeto e registrá-lo com Agente JMX.
Posteriormente, é possível modificar esse host a partir de um cliente JMX, como o
jconsole
fornecido com qualquer JDK.Conecte-o
jconsole
a um Tomcat habilitado para JMX e navegue no MBean do Host para verificar todos os atributos disponíveis:e verifique todas as operações disponíveis (uma delas mostrada abaixo como exemplo):
fonte
Não. Reinicialização necessária.
A página de documento do Tomcat para
<Context>
menções:fonte
we’re talking about <Host>, not <Context>.
-1 desculpe, é raro eu fazer isso, mas não tenho de ...