2016-06-27 16 views
0

複合ユニークキーを持つJPAエンティティがあり、このエンティティのテーブルにデータを読み込むスケジューラを作成しました。一意のキー違反がある場合にロードする際に例外があります。私は自分のデータベースから一意の制約違反例外を抑制し、他のすべてのオブジェクトのロードを続行したいと思います。私はトランザクションを使用しています。他のユーザーが使用しているので、一意性を確認するためにテーブル全体をロックしたくありません。JPAで一意制約例外をバイパスする方法2

私はあなたがすべてのオブジェクトを反復処理してたときに、負荷の任意の特定のデータ例外が発生した場合、反復は継続し、他のオブジェクトになる。これにより
try{} catch(JPAException exp){}

でテーブルにオブジェクトをロードする方法を包むことができると思い

+0

「それは機能していない」という意味を説明します。それについて働いていないのは何ですか?ただし、制約の例外が発生している場合、永続ユニットは矛盾した状態にあります。つまり、エラーにつながる可能性のあるステートメントやオブジェクトがわからないため、使用できません。問題を修正し、新しいコンテキスト/トランザクションで再試行する必要があります。 – Chris

答えて

0

依然として処理される。

+0

私は 'try {} catch(SQLException exp){continue;}'と 'try {} catch(Exception exp){continue;} 'を試しましたが、動作しません。 – cdaiga

+0

ソースコードを提供できますか? –