有没有办法在另一个.war
内启动/停止.war
文件?
我正在使用Tomcat 8运行SymmetricDS服务器(它部署了它自己的.war
),我需要在按下按钮时启动它,同样停止。我能这样做吗?
答案 0 :(得分:3)
当战争文件被删除时#34;在Tomcat的webapp
文件夹中,默认情况下Tomcat会自动部署并启动它。从webapp
文件夹中删除源war文件时,Tomcat会自动停止并取消部署Web应用程序。
所以你基本上所需要做的就是将war文件复制到webapp
文件夹中并从中删除,以启动/停止web应用程序。
此外(或者如果你不能这样做)Tomcat有一个内置的管理器webapplication,它能够部署新的应用程序(来自war文件),或者停止和取消部署正在运行的web应用程序。
有关详细信息,请参阅Manager App HOW-TO。
如果您想从代码中执行此操作,请查看ManagerServlet
课程。您可以使用简单的URL和参数调用它。该类的javadoc包含您可以使用它执行的示例URL。以下是两项针对您需求的重要操作:
/start?path=/xxx
- 启动附加到此虚拟主机的上下文路径/ xxx的Web应用程序。/stop?path=/xxx
- 停止附加到此虚拟主机的上下文路径/ xxx的Web应用程序。