Play Framework 2.2.2がTomcat 7 - Bonecpを削除します
-
21-12-2019 - |
質問
Playフレームワーク2.2.2 .war
ファイルとして展開しているアプリケーションを持っていて、Tomcat 7で実行されています。Tomcatの下に展開すると、Tomcatサーバーはロックアップし、その上で実行されているすべてのアプリケーションも同様に停止します。
問題は、PlayのBoneCP
接続プールとTomcatの内蔵接続プールが競合していることです。Tomcatログにはあまり役立つ情報や便利な情報がありませんので、ここで推測しているようなものです。
Playアプリケーション内でBonecp接続プールを無効にしたいが、その方法についての情報が見つからない。
あらゆるアドバイスが理解されています!
解決
これにはいくつかの解決策があります。これは、展開環境に多かれ少なかれ優先される可能性があります。
-
PLAYは、使用する必要がない「ボックス外」データベース接続を提供します。ビルドファイルからPlay JDBCコンポーネントを削除します(
jdbc
からlibraryDependencies
を削除し、自分で手動で設定します。たとえば、Playアクションで使用するために必要なJDBC接続を提供する関数TomcatConnectionPool
を持つシングルトンgetConnection()
を作成できます。 -
あなた自身のプラグインを書く playの
DBPlugin
インターフェイスそれはデータベースプラグインです。 。 Playのbonecpplugin のように、Bonecpの代わりにTomcat接続プールを使用します。 -
他の誰かのカスタムプレイデータベースプラグイン、 c3p0を使用するものと同じように/ a>。 C3P0がTomcatとうまく機能するといういくつかの虚偽の証拠がありますが、あなたの走行距離は違います。