【问题标题】:How can I add external files to webapp classpath running with Jboss within eclipse?如何将外部文件添加到在 Eclipse 中使用 Jboss 运行的 webapp 类路径?
【发布时间】:2012-04-29 16:42:47
【问题描述】:

我的工作区中有三个项目:

  • prjData,一个“简单”项目(没有 java 或任何其他方面),包括许多配置文件(xml、属性等)
  • prjWeb,一个“动态网络”项目
  • prjEar,一个耳朵项目,其“项目参考”中有 prjWeb

我尝试从 Eclipse (helios) 内部将 prjEar 部署在 JBoss 4.2 上。

我创建了服务器(在服务器视图中),然后在其 wtp 启动器的类路径中添加了 prdData/config(双击服务器项,然后从概览窗口,单击“打开启动配置”,选择类路径选项卡,高级/ 添加文件夹)。

当我从服务器视图启动服务器时,控制台视图确认 Jboss 启动了 webapp,但在所有需要实际位于此附加类路径文件夹中的配置文件(如 log4j 或 OJB 配置)的任务上都失败了。

我习惯于使用 Tomcat 来做到这一点,而且它工作得很好。 但是对于当前的项目,必须坚持使用 JBoss。

Jboss 和 webapp 考虑(或不考虑)在 wtp 启动器视图中设置的类路径附加文件夹的方式有什么问题?

【问题讨论】:

  • 我们可以接管这个聊天,因为默认情况下将文件夹添加到类路径应该可以吗?

标签: eclipse jboss eclipse-wtp


【解决方案1】:

其实 Eclipse/WTP 在 JBoss 运行时添加文件夹并没有什么问题。

问题出在我对 OJB 配置加载的错误理解。

我正在处理一个现有的应用程序,其中 repository.xml 文件被拆分成多个部分,这些部分通过 xml 实体包含在内。 这些片段位于 prjData 的不同文件夹中,但 prjData 被配置为一个 java 项目,具有尽可能多的“源”目录。 然后 prjData 作为 java 子模块包含在 prjWeb 中,所以那些“源”目录中的片段都在 WEB-INF/classes 中的同一位置结束,这让 JBoss 很高兴。

当我决定打破 prjData 的 Java 特性并将其包含在 prjWeb 中替换为类路径包含时,问题就出现了。然后所有部分都在类路径中,但仍在不同的文件夹中。

当repository.xml 尝试解析其xml 实体时,它未能找到碎片(因为它通过文件系统组织查找文件,而不是当前的java 类路径),导致整个应用程序无法启动。

我只需要更改 xml 实体声明中的文件组织和相对路径即可使其再次工作。

【讨论】:

    猜你喜欢
    • 2013-02-27
    • 1970-01-01
    • 2012-03-14
    • 1970-01-01
    • 1970-01-01
    • 2019-09-01
    • 2013-07-16
    • 1970-01-01
    • 2013-07-08
    相关资源
    最近更新 更多