У меня есть пользователь и набор авторитетов в отношениях "один ко многим":
Пользователь.hbm.xml:
<set name="authorities" table="authorities" cascade="all-delete-orphan">
<key column="user_id" />
<one-to-many class="com.ebisent.domain.Authority" />
</set>
Когда я удаляю пользователя, я также хочу удалить полномочия, но вместо этого внешний ключ дочерней таблицы (authorities.user_id) устанавливается равным нулю. Затем я получаю следующую ошибку, и удаление пользователя откатывается:
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
Однако обновление author.user_id до нуля не откатывается.
Как я могу удалить Полномочия при удалении родительского Пользователя?
РЕДАКТИРОВАТЬ: я получил это, явно удалив полномочия, вызвав refresh() для пользователя, а затем удалив пользователя, но я хотел бы знать «правильный» способ сделать это.