jboss 7 (envers 4) Unable to load class org.hibernate.envers.event.AuditEventListener

Vlada picture Vlada · Sep 2, 2011 · Viewed 8.5k times · Source

I port from hibernate Envers 3.6 to Envers 4.0. This new version doesn't have AuditEventListener. Old version requires: listeners

I can't find how to configure the new version.

Answer

user613465 picture user613465 · Dec 21, 2011

In version 4.0 :

<properties>
  <property name="hibernate.ejb.event.post-insert" value="org.hibernate.ejb.event.EJB3PostInsertEventListener,org.hibernate.envers.event.AuditEventListener" />
  <property name="hibernate.ejb.event.post-update" value="org.hibernate.ejb.event.EJB3PostUpdateEventListener,org.hibernate.envers.event.AuditEventListener" />
  <property name="hibernate.ejb.event.post-delete" value="org.hibernate.ejb.event.EJB3PostDeleteEventListener,org.hibernate.envers.event.AuditEventListener" />
  <property name="hibernate.ejb.event.pre-collection-update" value="org.hibernate.envers.event.AuditEventListener" />
  <property name="hibernate.ejb.event.pre-collection-remove" value="org.hibernate.envers.event.AuditEventListener" />
  <property name="hibernate.ejb.event.post-collection-recreate" value="org.hibernate.envers.event.AuditEventListener" />
</properties>

There is no need to add this in the persistence.xml.

These event listener are now registred automaticaly.

Check : http://www.warski.org/blog/2011/04/envers-and-hibernate-4-0-0-alpha2-automatic-listener-registration/