ユーザーが削除ボタンをクリックして何かを削除するたびに、私は電話をかけます
em.remove(entity)
このエンティティへの参照制約がまだある場合は、PersistenceExceptionがスローされているのがわかり、それをキャッチしてユーザーに気付くことができます。
しかし、それは私がコードで見ることができる関係のためだけです。例えば:
A has an OneToMany relationship to B
いくつかの特殊なケースでは、関係がコードに反映されません。例えば:
Table A has a foreign key to Table B. But in code, there is no XtoX relationship between them
このような場合、上記のPersistenceExceptionをキャッチできず、画面上で例外が非常に見苦しく表示されます。
私が思うに、例外はトランザクションのコミット時に表示されます。
とにかくそれをキャッチしますか?