Red Hat Training

A Red Hat training course is available for JBoss Enterprise Application Platform Common Criteria Certification

2.3. Event listeners

Hibernate Entity Manager needs to enhance Hibernate core to implements all the EJB3 semantics. It does that through the event listener system of Hibernate. Be careful when you use the event system yourself, you might override some of the EJB3 semantics. A safe way is to add your event listeners to the list given below.

Table 2.2. Hibernate Entity Manager default event listeners

Event Listeners
flush org.hibernate.ejb.event.EJB3FlushEventListener
auto-flush org.hibernate.ejb.event.EJB3AutoFlushEventListener
delete org.hibernate.ejb.event.EJB3DeleteEventListener
flush-entity org.hibernate.ejb.event.EJB3FlushEntityEventListener
merge org.hibernate.ejb.event.EJB3MergeEventListener
create org.hibernate.ejb.event.EJB3PersistEventListener
create-onflush org.hibernate.ejb.event.EJB3PersistOnFlushEventListener
save org.hibernate.ejb.event.EJB3SaveEventListener
save-update org.hibernate.ejb.event.EJB3SaveOrUpdateEventListener
pre-insert org.hibernate.secure.JACCPreInsertEventListener, org.hibernate.valitator.event.ValidateEventListener
pre-insert org.hibernate.secure.JACCPreUpdateEventListener, org.hibernate.valitator.event.ValidateEventListener
pre-delete org.hibernate.secure.JACCPreDeleteEventListener
pre-load org.hibernate.secure.JACCPreLoadEventListener
post-delete org.hibernate.ejb.event.EJB3PostDeleteEventListener
post-insert org.hibernate.ejb.event.EJB3PostInsertEventListener
post-load org.hibernate.ejb.event.EJB3PostLoadEventListener
post-update org.hibernate.ejb.event.EJB3PostUpdateEventListener
Note that the JACC*EventListeners are removed if the security is not enabled.
You can configure the event listeners either through the properties (see Section 2.2, “Configuration and bootstrapping”) or through the Ejb3Configuration.getEventListeners() API.