编程语言
首页 > 编程语言> > java-JPA 2中@Embeddable上的@PostLoad吗?

java-JPA 2中@Embeddable上的@PostLoad吗?

作者:互联网

我有一个问题,就是我的@Embeddable上的@PostLoad方法没有被调用.

但是我不知道它是否应该工作并且某个地方的配置错误更多,或者我不应该工作,因为@PostLoad仅适用于@Entitys吗?

我没有在JSR的@Embeddable中找到有关@PostLoad的具体声明.

3.5.1 Lifecycle Callback Methods

Entity lifecycle callback methods can be defined on an entity listener
class and/or directly on an entity class or mapped superclass.

我不知道该语句是否包含@Embeddable.

我的持久性提供程序是Eclipselink.

解决方法:

当前未为Embeddables处理实体回调和侦听器.这可能与规范一致,因为它们被称为“实体”回调,而且orm.xml不允许它们被嵌入.

但是,EclipseLink确实支持嵌入式事件,因此没有理由我们不支持此事件,因此请在EclipseLink上记录一个错误.

您应该能够使用DescriptorCustomizer为可嵌入对象定义DescriptorEventListener,PostLoad回调映射到postBuild和postClone.

标签:jpa,eclipselink,java
来源: https://codeday.me/bug/20191201/2080921.html