如何从EJB中获取Web资源的路径?

时间:2013-06-05 14:53:28

标签: java web-applications ejb

这是我在StackOverflow上的第一篇文章,所以如果我违反任何规则,请告诉我。

至于问题:

我有一个JBOSS项目如下:

myproject
  -myproject-ear
  -myproject-ejb
     -mypackage
       -myQuartzClass.java
  -myproject-web
     -src
        -main
          -webapp
             -protected
                -sql
                  -mySqlQuery.sql

事实是,我需要从“MyQuartzClass.java”中获取路径(然后读取文件)到“mySqlQuery.sql”)。可能吗?我知道我可以在ManagedBean中使用FacesContext.getCurrentInstance()。getExternalContext()。getRealPath,但是我可以在EJB类中使用类似的东西吗?

由于

1 个答案:

答案 0 :(得分:0)

至少对于WAR部署,您可以让ContextListener将一些信息加载到非@ Startup-annotated EJB的静态字段中。在https://github.com/IanDarwin/GetWebFilesInEJB.git

上有一个代码示例

我没有在传统的EAR部署上测试它;如果它在那里不起作用,可能会给一些人一些简化生活的动力: - )