class A {
def afterLoad() {
A.withTransaction {
}
}
}
大多数情况下,它可以工作,直到我在控制器
中调用以下列表A.createCriteria().list{.....}
将抛出异常:org.hibernate。HibernateException:发现同一个集合的两个表示
如果我删除
A.withTransaction
可能
A.withNewSession { session ->
....
}
将帮助你
我自己也遇到过这种例外,我真的被它难住了好几天。你可以看看这个问题的答案是否解决了你的问题:
HibernateException:发现同一个集合的两个表示
这个解决方案对我不起作用,所以我写了一篇文章来描述这个问题以及我如何解决它,你可以在这里阅读。我相信你的问题与我的相似,因为事务方面,Hibernate在事务提交时刷新会话,这就是抛出异常的地方。