1

2 つの新しいエンティティ オブジェクトを作成し、それらを相互に関連付けたり、既存のエンティティと関連付けたりする EJB サービス メソッドを作成しようとしています。クラス間の関係は次のようになります。

ClassA 1:N ClassB
ClassA 1:N ClassC
ClassB 1:N ClassC

現在、すべての関係は双方向であり、各関係の CascadeType を「ALL」に設定しています。ClassA のインスタンスは、エンティティ マネージャーを使用して検索されます。ClassB と ClassC は、このメソッドの一部として作成される新しいインスタンスです。私がやりたいことは、リレーションシップをセットアップし、すべての変更を永続化し、ClassC の更新されたインスタンスを返すことです。問題は、実際にトランザクションをコミットしようとすると、常に次のようなエラーが発生することです。

"(javax.resource.ResourceException: トランザクションがアクティブではありません: tx=TransactionImple < ac, BasicAction: 0:ffff7f000001:126a:50b6222c:c2 ステータス: ActionStatus.ABORT_ONLY >)"

このようなことをする方法を知っている人はいますか?

4

1 に答える 1