当前位置: 首页 > 知识库问答 >
问题:

ejb jar无效:它包含零个ejb。

冯元徽
2023-03-14

我有两个模块:ejb和war,以及包含它们的ear模块。模块构建成功,但当我尝试将ear部署到glassfish时,收到以下错误:

glassfish3.1.2|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=17;_ThreadName=Thread-2;|Exception while deploying the app [EarModule] : Invalid ejb jar [BackEnd-1.0-SNAPSHOT.jar]: it contains zero ejb. 
Note: 
1. A valid ejb jar requires at least one session, entity (1.x/2.x style), or message-driven bean. 
2. EJB3+ entity beans (@Entity) are POJOs and please package them as library jar. 
3. If the jar file contains valid EJBs which are annotated with EJB component level annotations (@Stateless, @Stateful, @MessageDriven, @Singleton), please check server.log to see whether the annotations were processed properly.|#]

我真的不知道该怎么办,我发现了很多像我这样的问题,但没有解决办法。

共有3个答案

孔梓
2023-03-14

我知道这是非常特定于构建的,它使用Netbeans而不是OP的IDE,但因为我是这里的负责人,这可能对一些用户有用:

我有以下构建:使用Maven Glassfish 4.1JavaEE 7的Netbean企业应用程序

我尝试过从以前的非maven企业应用程序迁移,克隆并不像我预期的那样工作,周围有一些旧的ejb罐,我已经删除了。

我做了很多事情来修复它:

  1. 确保周围没有不应该存在的ejb jar。确保您没有多次意外地包含ejb模块jar,因为这也可能导致相同的错误(手动部署ear和通过netbeans部署有时会给我带来不同的错误)

我可能不得不做一些我忘记的事情,但如果你仍然遇到问题,请在下面发表评论,我将尝试更新。

乐正浩言
2023-03-14

您必须将EJB添加到WAR或EAR文件中。只需创建一个新类并用@Stateless

鞠边浩
2023-03-14

我明白了,出了什么事。问题是在运行配置中,我使用Intellij Idea,在运行配置中,我的ear模块在运行前进行了构建和制作。我删除了它,并在maven安装后成功部署了它。

 类似资料:
  • 问题内容: 我创建了以下存储过程,该过程用于计算所选位置的特定范围之间每天的记录数: 但问题是结果没有显示零记录的日子,我很确定这与我的WHERE语句有关,不允许显示零值,但我不知道该如何解决这个问题。 预先感谢尼尔 问题答案: 不是WHERE子句,而是GROUP BY。简而言之,查询将仅返回存在的行的数据。这意味着当您根据时间戳记的日期进行分组时,只会返回有行的日期。SQL Server从上下文

  • 问题内容: UTF-8字符串可以包含零字节吗?我要通过ascii纯文本协议发送它,是否应该使用base64之类的东西对其进行编码? 问题答案: 是的,UTF8中的零字节是代码点0,NUL。有没有将在UTF8与在它一个零字节的任何位置进行编码等Unicode代码点。 可能的代码点及其UTF8编码为: 您可以看到,所有非零ASCII字符都被表示为自己,而所有多字节序列的所有字节均具有1的高位。 您可能

  • 问题内容: 我正在将服务器从 Tomcat-6* 迁移 到 Tomcat-9 。我的网站是为HTTP / 1.1协议设计的。server.xml文件包含 org.apache.coyote.http11.Http11NioProtocol 的连接器协议。服务器正常启动,不会产生任何错误。但是,当我尝试使用本地主机访问我的网站时,出现以下错误:- * INFO [https-nio-8445-exe

  • 我一直在尝试在listview生成器的末尾添加一个按钮。我试着做这个问题中建议的事情:Flutter:如何在ListView的末尾添加一个按钮小部件。包含其他类型小部件的生成器?。但如果我这样做,我会得到:“RangeError(index):无效值:不在包含范围0..49:50中 我试图寻找问题,也有这个问题,但我找不到一个答案,解决它。

  • 问题内容: 我有以下代码,出现错误“ PHP致命错误:常量表达式包含无效操作”。当我在构造函数中定义变量时,它可以正常工作。我正在使用Laravel框架。 我已经看到了这个问题:PHP错误:致命错误:常量表达式包含无效的操作,但是我的代码未将任何内容声明为静态,因此无法回答我的问题。 问题答案: 如上所述这里 类成员变量称为“属性”。您可能还会看到使用其他术语(例如“属性”或“字段”)来引用它们,

  • 以下是我的服务代码: 和我的客户代码: 如何在FaignClient中设置?