我有一个像这样定义的Customer类:
@Entity
public class Customer {
//...
@OneToMany(mappedBy = "customer", orphanRemoval = true, FetchType.EAGER)
@MapKey(name = "name")
private Map<String, Operation> operationMap = new HashMap<String, Operation>();
我的GUI应用程序通过EJB检索此客户,然后更新客户和/或其操作。问题在于,每当遍历operationMap
集合时,都会创建Operation
个实体的新代理,这会为GUI组件带来问题。有些仍然绑定到旧代理,而有些则绑定到新代理。
您如何解决此问题?尝试只遍历operationMap
一次?有没有办法以某种方式限制新代理的创建?
我正在使用EclipseLink JPA(Glassfish AS)。
答案 0 :(得分:0)
这实际上是我的托管bean中的一个错误。偶然调用一个方法,即使在初始页面加载后也会获取Customer实体,因此每次都会创建新的分离Customer
实体。