【问题标题】:How to load a Properties File when the ClassLoader is in the EJB jar and the Properties File is in war当 ClassLoader 在 EJB jar 中并且属性文件处于战争状态时如何加载属性文件
【发布时间】:2012-07-02 07:37:20
【问题描述】:

我有这个问题。我想加载一个位于 war 文件中的属性文件,但类加载器在另一个 jar 文件中。但是它们被编译在一个耳朵文件中。当我将属性文件放在 jar 文件项目的 src 文件夹中时,它可以工作,但我想将它放在 Web-INF/Classes 中以备将来更新。

详情。

在 EAR 中编译 EJB IBM Websphere

谢谢!

【问题讨论】:

    标签: java classloader websphere-7


    【解决方案1】:

    您的战争取决于您的 EJB,但 EJB 不取决于您的战争。

    因此,这是不可能的。

    如果必须更新配置,则应将其外部化。 您将无法在您的战争中修改文件。

    一个好的做法是独立于环境生成 EJB jar 和 WAR。 它将使您的开发团队能够在每个环境中部署相同的代码。他们只需要调整外部属性文件(数据库登录名/密码等)。

    【讨论】:

    • 谢谢先生。这是一个很大的帮助!还有其他方法吗?像 ejb.jar 访问应用服务器中的文件一样?谢谢!
    • 不,您无法访问已部署的代码。唯一的方法是从应用服务器外部加载属性。
    • 将 -Dconfig.path=/pat/to/config/files 添加到您的启动脚本中,然后使用 System.getProperty("config.path") 访问文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-18
    • 2011-02-18
    • 2011-07-06
    • 2011-12-18
    • 2012-07-08
    • 2011-03-22
    • 1970-01-01
    相关资源
    最近更新 更多