0

我想我可能对 Apache Delta Spike 有问题。我有一个已经存在的父实体,我正在向它添加一个新子实体。如果我使用 EntityRepository,我会在插入时遇到重复键问题,因为它必须认为父级尚未持久化:

[代码] entityRepository.save(父); // 这会引发重复键异常

entityManager.merge(父); // 这有效 [/code]

有趣的是,我检查了 CdiQueryInvocationContext 的来源,它正在做与我正在做的完全相同的事情,它检查父级是否有标识符。如果是这样,它调用合并而不是持久化。

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:重复条目 'user-1' 键'User_Environment'

有任何想法吗?暂时,我将使用 entityManager,但这违背了目的。

谢谢,

沃尔特

4

0 回答 0