@Transactionalとマークされたクラスのメソッドでトランザクションを手動で維持する必要があります。これを今実行しようとすると、例外がスローされています(おそらく、トランザクションが2回、1回、2回、ラッパー・プロキシによってコミットされているためです)。私は何をする必要がありますか?@Transactionalクラス全体の1つのメソッドを非トランザクションとしてマークすることは可能ですか?
これができない場合は、トランザクションが正常にコミットされたとき(DB内のデータなど)、同じデータベースに依存する別のアプリケーションを呼び出すように通知する方法はありますか?
を使用したセクション 10.5.6で、私は/手動でトランザクションをコミットを開始させて頂いておりますか!私はそれを試しましたが、私はまだ同じ例外が発生します – user802232
あなたの自己を開始、コミットまたはロールバックするためのコードを追加しないでください、春はあなたのためにそれを行います。上記の例では、最後の行でコミットされたupdateFoo()メソッドの開始時に、新しいトランザクションが開始されます。トランザクション間に問題がある場合はロールバックされます。 – ManuPK