2014-07-07 42 views
0

我不得不使用JBoss作为应用服务器的Java EE应用程序。我有以下目录下的一些XML文件。JBossAS [6.0.0.Final“如何阅读从部署罐子资源]

/src目录/主/资源/ COM /制图/

当我通过JUnit测试访问项目,,我可以用

 in = new FileInputStream("src/main/resources/com/mapping/file.xml"); 

读取XML文件,当我添加项目为部署到JBoss,我的资源下,出口内Project.jar “com/mapping”。

现在我想通过以下方法

in = new FileInputStream("com/mapping/file.xml"); 

读取XML文件,但我越来越FileNotFoundException.How我可以阅读JBoss部署罐内资源?

回答

0

当你正在运行你的单元测试和从jar中运行时,你的根目录是不同的。而且,包含在JAR文件中的资源不能使用FileInputStream读取。

尝试使用:

InputStream inputStream = getClass().getClassLoader().getResourceAsStream("com/mapping/file.xml"); 

这应该在这两种情况下工作。