2012-04-10 12 views
1

JPAクローズ接続の問題が発生しています。私は休止3.0で春3.0.5を使用しています。 JPAトランザクションマネージャを使用して、自分のサービスを管理し、REFERRED伝播を使用しています。 JPAトランスレーション・マネージャとの接続に関する問題が発生しました

これは私のシナリオです。私は、エンティティAをロードしたい

Table A 
id  
desc (LAZY) 

Table B 
a_id 

a_id in Table B refers to id of Table A. 

は、私は私のサービスで見つける()メソッドの各によって、トランザクション内で実行されることを想定していエンティティにB.

Here is what I am doing (roughly) inside the controller: 
List<B> list = serviceB.find() ; 

for each element - itemB in above list : itemA = serviceA.find(itemB.a_id); 
convert itemA to UI bean and set it in model. 

を与えられました必要な伝播。しかし、2番目のfind()では、例外がスローされ、それも断続的にスローされます。時々それは接続を閉めていると言い、他の時には「トランザクションはアクティブではありません」と言っています。私を夢中にさせる..

ヘルプありがとう!

答えて

0

同じサービスメソッドにアクセスする複数のスレッドが問題になりました。 UIページを変更して、パラレルではなくシリアルアクセス(ajaxを使用)を行うと、これは発生しません。エンティティマネージャをマルチスレッドシナリオで動作させる必要があります。

関連する問題