【发布时间】:2012-05-21 04:06:57
【问题描述】:
我们有一个在 JBoss AS 7 上运行的 Seam 2 应用程序。为了加快访问实体的历史修订,我们切换到 Envers Validity Audit Strategy。一切似乎都很好,但是保存一种特定类型的实体会导致
org.hibernate.AssertionFailure: possible nonthreadsafe access to session
错误。关闭有效性审计策略解决了这个问题。
是否有人在有效性审计策略方面取得了任何成功(文档确实说是experimental)?
我应该指出我们正在使用 Hibernate 3.6.8.Final。
【问题讨论】:
-
Hibernate 3.6.10 显示同样的问题。
-
经过一些研究,这个问题归结为从集合中删除一个实体。 “可能的非线程安全访问会话”错误实际上与线程无关。 liferay.com/it/community/forums/-/message_boards/message/… 似乎记录了类似的问题。
-
实际上,当具有任何类型集合的实体在该集合中添加或删除项目时,就会出现该错误。
标签: hibernate seam2 hibernate-envers