我有一个奇怪的例外。我的映射:
public class ConcreteProduct {
...
@OneToMany(mappedBy = "concreteProduct")
public Set<ExternalClient> getExternalClients() {
return externalClients;
}
....
}
public class ExternalClient {
...
@ManyToOne
@JoinColumn(name = "id_concrete_product")
public ConcreteProduct getConcreteProduct() {
return concreteProduct;
}
..
}
我想使用 Hibernate 操作对 ConcreteProduct 进行简单的操作。我使用 crudDAO:
ConcreteProduct concreteProduct = (ConcreteProduct) crudDAO.getById( ConcreteProduct.class, list.get( 0 )
.getId() );
if ( concreteProduct != null ) {
finishCalculation( concreteProduct );
crudDAO.save( concreteProduct );
}
还有一个例外:
线程“Thread-33”中的异常 org.springframework.orm.hibernate3.HibernateSystemException:找到同一个集合的两个表示:pl.eo.apps.mops.product.bo.ConcreteProduct.externalClients;嵌套异常是 org.hibernate.HibernateException:找到同一个集合的两个表示:pl.eo.apps.mops.product.bo.ConcreteProduct.externalClients 原因:org.hibernate.HibernateException:找到同一个集合的两个表示:pl.eo .apps.mops.product.bo.ConcreteProduct.externalClients
也许重要的是整个操作都在一个线程中处理。是什么导致了这里的问题?