2011-07-12 7 views
0

SQLException weblogic.common.resourcepool.ResourceLimitException:現在プールmyDb.datasourceのリソースがアプリケーションに割り当てられていません。プールのサイズを大きくして再試行してください。データソースプールのサイズがStrutsのapを超えました

こんにちは、人々。
上記のエラーが表示されます。私はStruts 2と一緒に作業していますが、最終的にブロックを使用して、さまざまなアクションで開いた接続を適切に閉じていると思います。 私は既存のアプリケーションをStruts 2に移植していますが、アプリケーションは元々単純なJSPとコアJavaで書かれていますが、フレームワークはまったく使用されていませんでした。私も気をつけましたか、メインクラスのファイナライズメソッドをオーバーライドして、そこに接続を閉じてしまったと思います。 これは、すべてのビジネスロジックを実行し、プレゼンテーションロジックをミックスしてJSPページに表示するクラスです。 したがって、使用されるロジックの種類は次のとおりです。 JSPページ。メインクラスのメソッドを呼び出します。 Helperクラスの静的メソッドに適用されることがあります。 メインクラスは、Helperクラスの静的メソッドを使用することもできます。

上記の例外を是正するために他に何をお探しですか? weblogic上の私のプールは現在15の接続を許可しており、アプリケーションに潜在的に1〜3人のユーザーがおり、それらを同時に使用しないことも考慮すると、プールのサイズは問題ありません。私たちのためのオプション。ここで

+0

一般的なトラブルシューティングでは、プールのサイズを一時的に大きくして、問題が再び発生するかどうかを確認することをお勧めします。たとえば、それを25に増やしても、おそらくは漏れた接続を示す同じ問題がある可能性があります。 –

答えて

0

を見ていくつかのものがあります:

  • データソースは、「診断」の「プロファイル接続リークを」有効
  • の「接続プール」タブの「非アクティブ接続タイムアウト」を有効にします データソースのタブ

これはトラブルシューティングに役立ちます。また、try/catchの 'finally'ブロックがあることを確認して、接続を予約してリリースされていることを確認してください。

+0

Thans、Jeff ... –

+0

私は最終的にブロックをarroundしています。私は、元のアプリケーションは開発のために他の誰かによって使用されており、自分と同じデータソースを使用しているという疑いがあります。だからといって、私はきれいにしようとしましたが、どこでも漏れの可能性が見えますが、ドアを開いたままにする人がいる可能性があります。 –

関連する問題