org.hibernate.ejb.event.EJB3MergeEventListener 从 Hibernate 3 升级到 4.3.9 后丢失
org.hibernate.ejb.event.EJB3MergeEventListener missing after upgrading from Hibernate 3 to 4.3.9
我正在尝试从 Hibernate 3.6.10 升级到 4.3.9(以及 JPA 2.0 到 2.1)。
我的应用程序中的一些代码使用了 org.hibernate.ejb.event.EJB3MergeEventListener
class,它曾经在 hibernate-entitymanager jar 中,但在 4.3.9 版本中丢失了。据我所知,它从 4.3 开始被删除,但我找不到任何关于为什么会这样或我应该如何解决它的信息。我想也许它被转移到了另一个罐子或包裹中(和许多其他 classes 一样)但我无法在任何地方找到它。
编辑:根据 Hibernate user documentation,这个 class 应该包含在版本 4.3 中。
我猜你需要添加 hibernate-entitymanager.jar
。你可以找到这个罐子 here
看起来这个 class(以及许多其他 EJB 内容)已重命名并四处移动。我能够将 org.hibernate.ejb.event.EJB3MergeEventListener
的实例(位于 3.6.10 版的 hibernate-entitymanager jar 中)替换为 org.hibernate.event.internal.DefaultMergeEventListener
(实际上位于 4.3.9 版的 hibernate-core jar 中) ),并且有效。
但是,class 仍然列在旧 name/package 下的 Hibernate 4.3 文档中。
我正在尝试从 Hibernate 3.6.10 升级到 4.3.9(以及 JPA 2.0 到 2.1)。
我的应用程序中的一些代码使用了 org.hibernate.ejb.event.EJB3MergeEventListener
class,它曾经在 hibernate-entitymanager jar 中,但在 4.3.9 版本中丢失了。据我所知,它从 4.3 开始被删除,但我找不到任何关于为什么会这样或我应该如何解决它的信息。我想也许它被转移到了另一个罐子或包裹中(和许多其他 classes 一样)但我无法在任何地方找到它。
编辑:根据 Hibernate user documentation,这个 class 应该包含在版本 4.3 中。
我猜你需要添加 hibernate-entitymanager.jar
。你可以找到这个罐子 here
看起来这个 class(以及许多其他 EJB 内容)已重命名并四处移动。我能够将 org.hibernate.ejb.event.EJB3MergeEventListener
的实例(位于 3.6.10 版的 hibernate-entitymanager jar 中)替换为 org.hibernate.event.internal.DefaultMergeEventListener
(实际上位于 4.3.9 版的 hibernate-core jar 中) ),并且有效。
但是,class 仍然列在旧 name/package 下的 Hibernate 4.3 文档中。