Reiniciar servidor TOMCAT via aplicação.  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
marciano1
Debugger

Membro desde: 22/07/2009 12:28:04
Mensagens: 55
Offline

Caros,

Como reiniciar o servidor tomcat via aplicação rodando dentro do tomcat?

Alguma sugestão.

Obrigado.
wolmirGarbin
JavaChild
[Avatar]

Membro desde: 17/09/2009 20:27:21
Mensagens: 129
Offline

Tranquilo!

Cara assim, até onde vai meu conhecimento, isso não é possível de se implementar, acredito que seja até por questões de segurança.

Valew!
http://wolmirgarbin.wordpress.com

Wolmir Cesar Garbin.

blog: http://wolmirgarbin.wordpress.com

"Não tentes ser bem sucedido, tenta antes ser um homem de valor, pois o sucesso virá por consequência."
ovelha
Java Ninja
[Avatar]

Membro desde: 12/09/2007 13:17:41
Mensagens: 281
Offline

Ola, é possivel sim utilizando JMX é totalmente viavel.

Vou fazer um howto aqui para vc, eu rodei em um tomcat 6 no ubunto.

1) Coloque esta linha no arquivo catalina.sh



Com isto vc vai ativar o JMX do seu tomcat.

Va no seu console e digite: jconsole (aqui é para vc aprender)

No jconsole digite a url para conexão remota:



Navegue no jconsole pelos menus Catalina\Engine (imagem em anexo)

Va em operation
Click em stop

Pronto vc acabou de baixar seu server via JMX

Facil não é?

Com isso o que vc deve aprender: existe um MBean chamado Engine dentro do pacote catalina, que tem operações de start\stop para controlar o tomcat.

Agora vc deve acessa-lo via código java





[Thumb - Screenshot.png]
 Nome do arquivo Screenshot.png [Disk] Download
 Descrição
 Tamanho 168 Kbytes
 Baixado:  47 vez(es)

This message was edited 1 time. Last update was at 13/04/2011 23:39:33


bééééééééééééééééé
ovelha
Java Ninja
[Avatar]

Membro desde: 12/09/2007 13:17:41
Mensagens: 281
Offline

claro que isto é so uma poc da vida vc não deve colocar isto em produção



O código que postei acima só vai rodar em java6 a crição de proxy (abaixo) não existe no java5



So um detalhe isto não vai reiniciar o server todo somente o enginne, se vc pode matar o server chamando a MBean Server metodo await só que ai não da para subir por JMX rsrs, prq vc precisa fazer isto??

This message was edited 1 time. Last update was at 13/04/2011 23:33:36


bééééééééééééééééé
marciano1
Debugger

Membro desde: 22/07/2009 12:28:04
Mensagens: 55
Offline

Olá,

Essa solução não serve pois preciso parar tudo e voltar, stop e start ou restart.

Pensei em usar o Wrapper http://yajsw.sourceforge.net/ mas acredito ser canhão para matar mosquito.

Outra solução que pensei e em fazer um Runtime.getRuntime().exec("java -jar /opt/Tomcat/bin/bootstrap.jar stop");

O problema é como fazer o start.

Alguma sugestão, obrigado.
marciano1
Debugger

Membro desde: 22/07/2009 12:28:04
Mensagens: 55
Offline

Alguma ideia? Seria impossível?
clebiovieira
JavaChild
[Avatar]

Membro desde: 07/09/2009 22:53:56
Mensagens: 101
Localização: Rio de Janeiro
Offline

marciano1 wrote:Alguma ideia? Seria impossível?

Impossível... nunca.. rsrs

Meu caro já resolveu seu problema ?

Realmente por JMX do Toncat não rola. Pois o JMX é levantado pelo Toncat ou seja, quando o Toncat parar sua comunicação também termina.

Já pensou em criar um aplicativo para ficar escutando suas chamadas ???
Se vc conseguir fazer isso o resto é mole. Só identificar o sistema operacional e executar o comando de start, stop dos serviços.






[WWW] [MSN]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team