是webapp-root / META-INF还是webapp-root / WEB-INF / classes / META-INF(Tomcat 7)

时间:2013-06-23 19:03:08

标签: spring java-ee web-applications tomcat7

除非我将META-INF放在根目录中,否则context.xml以及定义的资源(队列,jdbc连接池等)都无法正确读取,Spring会在启动时抛出异常。

现在我最终得到两个META-INF文件夹,由于persistence.xml,我在类路径(WEB-INF / classes / META-INF)上需要一个。

可以有两个META-INF吗?我总是在Spring的applicationContext中配置资源,所以之前没有注意到。

感谢。

1 个答案:

答案 0 :(得分:6)

我想这没关系。它们的目的可能略有不同。

webapp-root/META-INF是网络应用程序元数据的目录,您可以通过servletContext.getResource("/META-INF/foo")访问该目录。

webapp-root/WEB-INF/classes/META-INF是java类元数据的目录,您可以通过getContextClassLoader().getResource("/META-INF/foo")阅读。