【问题标题】:unable to access the property file when deployed on Apache Tomcat在 Apache Tomcat 上部署时无法访问属性文件
【发布时间】:2013-03-08 17:46:52
【问题描述】:

我已使用我的 user.properties 文件来访问存储在 WEB-INF 文件夹中的数据库。它在运行 GGTS(Groovy Grail Tool Suite)时正常工作。

我用过

Properties prop = new Properties();
prop.load(DataSource.class.getClassLoader().getResourceAsStream("user.properties"));

在数据源中

当我作为独立运行它时它工作

但是当我创建它的war文件并将它部署到tomcat服务器时它不起作用。

我的 user.properties 在 WEB-INF 文件夹中。

显示错误

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'pluginManager' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NullPointerException

提前致谢。请帮忙

【问题讨论】:

    标签: spring war web-inf


    【解决方案1】:

    您正在使用类加载器加载文件。但WEB-INF 不在 类路径中。 WEB-INF/classes 位于类路径中,以及 WEB-INF/lib 目录中的每个 jar。

    【讨论】:

    • 先生,现在请告诉我我要做什么?
    • 将文件移动到WEB-INF/classes,使其在类路径中。
    • 先生,非常感谢您,您太棒了....如果您有任何可以帮助我学习 tomcat 的博客,请参考,因为我是新手,再次感谢您。
    • 我没有任何关于 tomcat 的博客,但 tomcat 已记录在案:tomcat.apache.org/tomcat-7.0-doc/index.html。它实现了 JEE 规范,因此官方 JEE 教程也可以帮助您了解 JEE webapps 的工作原理。
    【解决方案2】:

    那是因为,user.properties 不在 Web 应用程序类路径中。

    解决方案

    • 构建战争时将 user.properties 移动到 WEB-INF/classes 文件夹

    【讨论】:

      猜你喜欢
      • 2017-04-04
      • 2012-06-05
      • 1970-01-01
      • 2014-10-05
      • 2011-12-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多