我面临一个奇怪的问题:当我刷新具有嵌入式 id 的实体时,EntityNotFoundException 不断被抛出。
编码 :
@Entity
public class A {
@EmbeddedId
private APk pk;
public A(int id, Date date) {
pk = new APk(id, date);
}
...
}
@Embeddable
public class APk {
private int id;
@Temporal(TemporalType.TIMESTAMP)
private Date date;
...
}
然后,在 EJB 方法中:
A entity = new A(1, new Date());
em.persist(entity);
em.flush();
em.refresh(entity); -> here's where the exception is thrown
堆栈跟踪 :
javax.persistence.EntityNotFoundException: Entity no longer exists in the database: [id=1, date=25-07-2013 15:02].
我正在使用带有 Eclipse Link 2.4.2 的 Glassfish v3.1.2 作为 JPA 提供程序(但它对嵌入式提供程序也是如此)。
请问你能帮帮我吗?
谢谢。