私のプロジェクトでは、struts、hibernateおよびspring、oracle db、WebLogicサーバーが使用されます。接続が管理上無効になったときにトランザクションがコミットされる
多くのテーブルを挿入するトランザクション(約20)があります。トランザクションで実行されていることは確かです。
今や、テーブルが完全に挿入されていないことがある(0.001?の確率)ことがわかりました。 は10個のテーブルを正常に挿入したように見えます。
以下は、春からのエラーログです。
ExecuteThread: '8' キューの 'weblogic.kernel.Default(セルフチューニング)'] SQLErrorCodesFactory:データベース製品名を抽出中にエラー - 空のエラーコードにフォールバック org.springframework.jdbc.support .MetaDataAccessException:DatabaseMetaDataの抽出中にエラーが発生しました。ネストされた例外はjava.sql.SQLExceptionです。Connectionが管理上無効になっています。後で試してください。
接続が管理上無効になっている場合、spring(またはhibernateのトランザクションマネージャまたはweblogic)は何を行いますか。
あなたは、トランザクションで実行していることを「かなり確信している」以上のものが必要です。非常に確実にしてください。 – skaffman