JPA合并为每个操作生成重复项

时间:2014-07-30 14:50:11

标签: java jpa merge duplicates

当尝试将实体与JPA(eclipselink实现)合并时,它会在包含实体的每个操作上重复。为什么呢?

使其更具体: 我已经situationparcels。如果我添加一个parcel,一切正常。如果我在不离开视图的情况下添加两个parcels(使用viewScoped支持bean),我将获得3 parcels

这怎么可能?

我在merge上使用situation方法保存添加的parcels

除了mergin之外,backingBean中没有其他任何事情发生。

1 个答案:

答案 0 :(得分:0)

通过调用parcels上的create方法而不是在situation上调用合并方法(创建parcel)来解决此问题。因此,在实体上调用create而不是在包含实体上进行合并修复它。

由于hashCode和equals问题,newSituation上的合并不起作用。 (见The JPA hashCode() / equals() dilemma