【发布时间】:2010-11-25 20:27:21
【问题描述】:
我正在使用 JBoss4.0.1 和 Struts2.1.6
我有一个应用程序,它有一些配置文件(文件夹 WEB-INF/config 中的 appConfig.xml)。 此配置文件包含要读取的其他文件的相对路径。(other.xml、some.xml 等)。应用程序在 default/deploy 中部署为 .war
我有一个读取配置文件的实用程序包。我已经在 default/lib 中部署了 utility.jar
在ServletContextListener 的contextInitialized 方法中,我正在读取appConfig.xml 并将appConfig 上的IOStream 传递给我的实用程序类,它会读取此文件并加载所有上下文相关路径。
我现在如何阅读这些文件?因为如果我尝试创建一个输入流,它会返回 NULL。
我已尝试在实用程序类中进行以下操作。
从ServletContextListener的contextInitialized方法内部调用read方法
public void read(){
this.getClass().getClassLoader.getResourceAsStream("/WEB-INF/config/some.xml");
}
public void read(ClassLoader cl){
cl.getResourceAsStream("/WEB-INF/config/some.xml"); --> Null
cl.getResourceAsStream("/../config/some.xml"); --> Null
cl.getResourceAsStream("../config/some.xml"); --> Null
}
public void read(ServletContext ct){
ct.getResourceAsStream("/WEB-INF/config/some.xml");.
ct.getResourceAsStream("/../config/some.xml"); --> Null
ct.getResourceAsStream("../config/some.xml"); --> Null
}
【问题讨论】:
-
我在this post 中尝试过类似的问题。希望这会有所帮助。
标签: servlets jar servletcontextlistener war