2016-11-07 6 views
0

にスローされたときに永続化されません、私は誰かがこの問題に遭遇している願っています:休止saveAndFlushアプリケーション例外が

を、私は例外をキャッチしていますし、catchブロックで、私はsaveAndFlushを呼び出してデータベースのレコードを保存するサービス層ではアプリケーションの例外をスローします。問題は、保存とフラッシュがレコードを永続化せず、トランザクションがロールバックしているように見えることです。

catch(SomeException e) { 
    repoClass.saveAndFlush(entity); 
    throw new ApplicationException(); 
} 

任意の考え:

コードは、そのようなものでしょうか?

多くのありがとうございます。

答えて

1

コードがRuntimeExceptionApplicationExceptionRuntimeException、したがってsaveAndFlushでない場合、トランザクションがロールバックするためトランザクションがロールバックされるからです。あなたがUserDefinedException代わりのRuntimeException

サンプル

public class UserDefinedException extends Exception { 

} 
をスローする必要があなたの場合は