我有一个 Tomcat 应用程序,需要引用应用程序外部的一些属性文件。一般来说,它们存储在本地计算机上的特定位置,例如C:\PROJECT_NAME\conf\
.
在 Tomcat 7 中,这可以通过放置一个来实现context.xml
文件内/META-INF/
其中使用了VirtualWebappLoader
基本上将此位置添加到应用程序类路径中,如下所示:
<Context>
<Loader className="org.apache.catalina.loader.VirtualWebappLoader"
virtualClasspath="/PROJECT_NAME/conf"
searchVirtualFirst="true" />
</Context>
我如何在 Tomcat 8 中实现同样的目标?
中有一个关于此的部分Tomcat 8 迁移指南 https://tomcat.apache.org/migration-8.html#Web_application_resources这将指导您使用资源配置 https://tomcat.apache.org/tomcat-8.0-doc/config/resources.html
特别是,您将创建一个Web资源根 https://tomcat.apache.org/tomcat-8.0-doc/api/org/apache/catalina/WebResourceRoot.html其描述中包含以下文本的对象。
VirtualWebappLoader - 替换为映射到 WEB-INF/lib 和 WEB-INF/classes 的前资源和后资源
您的新 context.xml 将如下所示:
<Context>
<Resources className="org.apache.catalina.webresources.StandardRoot">
<PreResources className="org.apache.catalina.webresources.DirResourceSet"
base="C:\\PROJECT_NAME\\conf"
internalPath="/"
webAppMount="/WEB-INF/classes" />
</Resources>
</Context>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)