0

我面临一个奇怪的问题:当我刷新具有嵌入式 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 提供程序(但它对嵌入式提供程序也是如此)。

请问你能帮帮我吗?

谢谢。

4

0 回答 0