0

在当前系统设置中,我有几个配置文件存储在 conf/Catalina/localhost 目录中。例如 images.xml:

<Context path="/images" docBase="/home/user/images" debug="0" privileged="true" />

这允许链接到此目录中的文件,例如:http://localhost:8080/images/image.jpg

但是,当映射的驱动器位于网络位置时,与驱动器的连接会丢失。因为 Tomcat 无法到达目的地,所以配置会自动取消部署。由于此服务器上运行的是真正的 Web 应用程序,我不想更改此 Tomcat 设置。

所以问题是,我可以在 WAR 文件中包含这个配置吗?这将使重新部署更容易,并且可能允许我捆绑配置?

4

2 回答 2

0

如果您创建一个名为images.war的 war 文件并将其放在您的 webapps/ROOT 目录中,那么它将自动映射到上下文路径图像(基于 war 文件名)。所以你可以这样做。确保您还包括一个部署描述符 ( web.xml ) -- 详细信息在这里:http: //download.oracle.com/docs/cd/E13222_01/wls/docs81/webapp/web_xml.html

抱歉,您的评论很准确——因为我没有注意!它确实是 webapps 目录,而不是我在上面复制和粘贴的 webapps/ROOT。

于 2011-04-20T13:54:33.343 回答
0

具体配置告诉 tomcat 从指定目录(在 tomcat 的默认目录之外)加载 web 应用程序。这是tomcat特定的配置,所以即使可以在战争中捆绑这个配置(我认为你不能)我建议不要走这条路。

更好的方法是将您的图像捆绑为一个分解的战争文件(以便您可以在 tomcat 运行时添加删除图像)并将其部署在 tomcat 中。据我了解,您希望将图像保存在连接断断续续的单独网络驱动器中。在这种情况下,当资源不可用时,tomcat 取消部署上下文是有意义的。

于 2011-04-20T14:06:30.337 回答