奇妙な例外が発生しました。私のマッピング:
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 での例外: 同じコレクションの 2 つの表現が見つかりました: pl.eo.apps.mops.product.bo.ConcreteProduct.externalClients; ネストされた例外は org.hibernate.HibernateException です: 同じコレクションの 2 つの表現が見つかりました: pl.eo.apps.mops.product.bo.ConcreteProduct.externalClients 原因: org.hibernate.HibernateException: 同じコレクションの 2 つの表現が見つかりました: pl.eo .apps.mops.product.bo.ConcreteProduct.externalClients
おそらく重要なことは、操作全体がスレッド内で処理されることです。ここで問題の原因は何ですか?