possuo uma aplicacao que está sendo executada no tomcat. Faco deploy via war. A minha dúvida é a seguinte: Caso eu descubra um problema numa classe e queira substituir somente o .class no servidor sem precisar reiniciar o TomCat, o que preciso fazer?
Estou substituindo o .class, mas a alteração só é realizada se eu restarto o tomcat, mesmo colocando a opcao de reloadable = true, e os usuarios perdem a secao!
Sem reiniciar o Tomcat fica dificil, pq você não continua fazendo o deploy via war.
Toda alteração que faço, por menor que seja, eu faço deploy do war.
debersom
Você pode dar um reload apenas no contexto da sua aplicação, sem reinicializar o Tomcat.
saoj
Como eu faço essa mágica com o tomcat 5.5.9 ???
debersom
Eu uso o ANT para fazer o deploy, e faço o reload assim:
Não experimentei direto pelo Manager, mas acho que deve funcionar e se você compilar suas classes e copiar para o diretorio do deploy o ANt só copia os arquivos modificados, não precisa nem gerar o WAR :mrgreen:
saoj
Legal! Não sabia que dava para usar o Ant com o Tomcat.
Sabe de algum tutorial sobre isso ?
Vou procurar na Internet…
Obrigado!
tiagops
Pessoal, dessa forma se tiver usuarios logados no site eles vao perder a secao ou vao poder continuar no sistema normalmente?
debersom
Preciso realizar uns testes para ter certeza :mrgreen: mas eu percebi em alguns deploys que eu fiz que a sessão continuava normal
debersom
saoj:
Legal! Não sabia que dava para usar o Ant com o Tomcat.
Sabe de algum tutorial sobre isso ?
Vou procurar na Internet…
Obrigado!
Você só precisa lembrar de incluir o catalina-ant.jar, que está no diretorio server/lib do Tomcat, no classpath do ANT
amdantas
pessoal, tem uma forma mais fácil.
no contexto da aplicacao vc seta a prop. reloadable=“true”.
pronto! isso se o contexto tiver apontando direto pro diretorio onde a aplicacao esta sendo desenvolvida.
aqui mesmo no guj tem um tutorial de como usar eclipse integrado com o tomcat.
deem uma olhada.
tiagops
O Problema é que a aplicação já está em produção no cliente.
indivito
só um detalhe pra quem perguntou ai:
se tiver usando algum plugin do tomcat o sysdeo por exemplo, voce clica com o botao direito no projeto depois em tomcat e tem la “reiniciar contexto”
flw
amdantas
ah tá
realmente as melhores opcoes sao as que o pessoal colocou mesmo …