java - 未知实体bean类: null,请验证该类是否已使用@Entity注释进行标记

标签 java jakarta-ee jpa ejb entitymanager

我的应用程序是一个带有 jpa 和 ejb 的 java ee 应用程序。一切都很完美,但我今天尝试运行它,但没有任何效果。标题中的异常(exception)是它不起作用的原因。所有实体都标有 @Entity 注释。我读了一些类似的主题,但我不明白如何解决它!

最佳答案

如果您正在使用版本控制,正如您应该使用的(甚至 git 没有 Remote ),那么只需将“一切正常”的版本与今天的版本进行比较即可。

如果没有更多信息,我猜您列出的类(在 persistence.xml 或 orm.xml 中)不再存在或已被重构为不同的包。

以下三件事可能会帮助您找到它。

<强>1。打开 JPA 提供程序的日志记录。

对于 EclipseLink 它将是:<property name="eclipselink.logging.level" value="FINEST" />

<强>2。检查标有 @Entity 的类的字段.

任何不在以下列表中的字段都必须有 @Entity@Embeddable注解。 (注意:枚举字段必须说明它们如何持久化,例如 @Enumerated(EnumType.STRING) )

  • 基本类型:boolean、byte、short、char、int、long、float 和 double。
  • java.lang 包中的等效包装类:
  • boolean 值、字节、短整型、字符、整数、长整型、浮点型和 double 型。
  • java.math.BigInteger、java.math.BigDecimal。
  • java.lang.String。
  • java.util.Date、java.util.Calendar、
  • java.sql.Date、java.sql.Time、java.sql.Timestamp。

(来源:objectdb)

<强>3。检查你的 persistence.xml

你有<exclude-unlisted-classes>true</exclude-unlisted-classes>吗? ? 如果是这样则将其更改为 false如果有效,那么只需在 IDE 中找到未列出的类即可。

如果列出了类,它们是否都仍然存在?使用完全相同的包?

关于java - 未知实体bean类: null,请验证该类是否已使用@Entity注释进行标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17308606/

相关文章:

java - jpa criteriabuilder upper 给出编译错误

java - 如何在 Android (2.2) 设备上获取用户的 GPS 位置

java - 对 onCreate 方法期间引用布局感到困惑

java - 如何将 int 转换为 String 并仍然计数?

java - 如何从 dao 函数返回整数?

JAVA: NamedQuery 字符串问题

java - JPA:通过外键引用的表的另一个字段进行索引

java - 方法调用两次 GWT

java - 在 RESTful Web 服务中公开服务

java - Spring 4 AOP:获取异常 java.lang.IllegalArgumentException:错误 at::0 在切入点中正式未绑定(bind)