cascade type save update in Hibernate

SAVE_UPDATE is for save(), update(), and saveOrUpdate(), which are 3 Hibernate-proprietary methods. JPA only has persist() and merge(). So, if you want to use cascading on Hibernate-proprietary methods, you'll need to use Hibernate-proprietary annotations. In this case, Cascade.

Or you could stop using the Hibernate Session, and use the standard JPA API instead.


CascadeType.ALL includes CascadeType.REMOVE too. The solution is to use all CascadeType.* you need except CascadeType.REMOVE, like so:

@ManyToOne(cascade = {CascadeType.PERSIST, CascadeType.REFRESH, CascadeType.MERGE}))

in your UserGroup definitions.

Tags:

Java

Hibernate