如果docBase myapp.war文件不可用,是否可以运行以前部署的/ webapp / myapp?

时间:2018-10-22 19:29:12

标签: tomcat context.xml

我将war文件放在共享驱动器上。我在Tomcat中设置docBase ... \ conf \ Catalina \ localhost \ myapp.xml,如下所示:  

当共享驱动器启动时,tomcat(AutoDeployOnStartup = true)检查war并成功部署它。但是,当共享驱动器关闭时,tomcat(在启动时)无法启动myapp,并且不使用已部署的webapp \ myapp(先前已部署)。

如果docBase war文件不可用,是否可以运行以前部署的/ webapp / myapp?或者,如果docBase war文件不可用,您正在使用什么故障转移解决方案?

1 个答案:

答案 0 :(得分:0)

myapp 不可用(未部署)时,请求将由ROOT Web应用程序处理。 (您可以在此处创建目录“ ROOT / myapp”,或将Servlet或Filter配置到该路径,以更复杂的方式处理中断)。

我想知道如果..\conf\Catalina\localhost\myapp.xml文件实际上是指向共享驱动器上文件的符号链接(当驱动器不可用时该符号将变为AWOL)会发生什么。 Tomcat是否会使用来自webapps目录的解压战争? (它存在..\conf\Catalina\localhost\myapp.xml,它的优先级高于webapp\myappReference。这就是为什么我想知道如果myapp.xml是一个符号链接会发生什么。)

通常,我认为您不应将Web应用程序部署到共享驱动器。您可以通过Manager Web应用程序将其自动上传到服务器(例如,通过Ant taskcurl + PUT请求)。 Manager应用程序也可以从远程源get the war

更新

还存在诸如FarmWarDeployerjavadocexamplereference)之类的工具。它从远程来源拉动战争。