2011-10-25 95 views
5

我的问题是部署到托管多个应用程序并托管Struts,Spring和Hibernate的应用程序上下文的Tomcat服务器实例。我想在不重新启动Tomcat服务器的情况下将更改部署到一个应用程序。Tomcat Hot部署到实例托管多个应用程序

举个例子,在我们公司很多时候,我们必须应用新的应用程序或版本部署到我们的tomcat的环境和过程可能是:

  • 移动类和jsp的爆炸文件夹,然后在上下文重新加载本身,或
  • 另一种情况是,我们必须部署新功能,需要 修改xml上下文,如struts-config.xmlspring-application-context.xml

当前我们必须重新启动Web服务器才能加载新配置。如果Tomcat没有其他我们不希望中断和重新启动的实时应用程序,这将是可以的。举个例子,如果我有一个使用hibernate和struts的应用程序,那么我必须将它重新部署到运行许多其他应用程序的Tomcat服务器上,然后部署新的应用程序并重新启动服务器。这并不理想。

所以问题是部署更改到Tomcat,包括上下文更改,我必须重新启动吗?有没有办法只为这个特定的应用程序进行热部署,并且可能不重启Web服务器而只重启它的上下文?

非常感谢! 致以问候

+0

您至少可以重新启动一个tomcat web应用程序FWIW [如何在不重新启动整个服务的情况下更新Tomcat webapp?](https://stackoverflow.com/questions/6583502/how-do-i-update-a -tomcat-webapp-without-restarting-the-entire-service) – rogerdpack

回答

8

您可以在server.xml中将“autoDeploy”属性设置为“true”。您可以在这里阅读更详细的信息http://www.mulesoft.com/tomcat-deploy
希望这有助于。

+1

我读过这个,所以有2条评论/问题:1)部署!=重新部署。 2)“通过将更新的WAR文件复制到appBase中来重新部署现有的应用程序”在这个过程中,有没有什么办法可以保留生产配置文件?由于部署与战争措施删除旧的文件夹并爆炸新的一个。 – joksy82

相关问题