I have implemented the pre/post event listeners for Hibernate events with one caveat I haven't been able to overcome. I have a Departments
entity that has a many-to-many relationship back to a Centers
entity. When assigning a new Center to a Department, I simply invoke:
oDepartment.addCenter(oCenter);
entitySave(oDepartment);
When this happens, I would expect Hibernate to trigger the preUpdate and postUpdate events since I modified the entity. However, it's never triggered unless a column property is also updated. Updating only a relationship property does not seem to trigger the update events.
Looking through the current Hibernate session, I can't seem to find anything that would allow me to set some sort of flag that would trigger these events to fire.
Thoughts on a way I could get these events to fire?
Hibernate doesn't fire pre/postUpdate events when a collection is changed. Instead it will trigger
This is a known and old bug, you can check HHH-2616 and here.
Either you implement these listeners, or, as a workaround, you can force the postUpdate to be called changing another field on that entity.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With