java - 当打包到 EAR 中时,Jar 中的实用程序类找不到 EJB

标签 java jakarta-ee glassfish-3 ear

我将一些核心功能用于打包在一个公共(public)类 JAR 中的 Web 应用程序。此 JAR 包含引用 EJB 的类和引用 CORE.jar 和 EJB.jar 的 Web 应用程序。

  • CORE.jar -> EJB.jar
  • WEBAPP.war -> CORE.jar
  • WEBAPP.war -> EJB.jar

我正在使用 Glassfish 3.1.2 在 Eclipse 开发插件中进行部署。

在我的部署日志中,我看到如下失败。 严重:类 [ Lnet/webframeone/ejb/data/GeoLocationsBeanLocal; ] 未找到。加载 [ class net.webframeone.servlet.action.GetGeoLocation ] 时出错

此处的引用是从 CORE.jar 中的类到 EJB.jar 中的类。 EAR的结构大致如下。

  • EJB.jar
  • WEBAPP.war
  • lib/CORE.jar

我曾尝试将类路径条目放入 CORE.jar 上的 manifest.mf 中,但无济于事。

如果我将 WEBAPP 与包含 CORE.jar 和 EJB.jar 的部署程序集打包在一起,并将其部署在 EAR 之外,它就可以正常工作。

任何想法都会被热情地排除在外!

最佳答案

我不确定 GlassFish 服务器。我使用 JBoss。我在以下情况下看到过这个问题 -

  1. /META-INF/application.xml 没有正确提及所有模块。
  2. 未指定部署的依赖项

关于java - 当打包到 EAR 中时,Jar 中的实用程序类找不到 EJB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13881397/

相关文章:

java - 使用 editcell 启用卡住 jqgrid

java - 如何让线程等待任务完成?

java - 可以焊接 (JSR-299) 和 JBoss AS 5.1 吗?

java - GlassFish 构建失败

glassfish-3 - 如何在嵌入式 Glassfish 中获取 Server.log

java - 我的 Searchview 不起作用/给出 NullPointerException setSearchableInfo

java - Mybatis插入自定义对象

java - 为信用卡生成随机数

java - JPA @PreUpdate 未被调用

jakarta-ee - 使用超时进行 EJB 调用