- - PR -
「プロトコル違反です。」エラーについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-07-29 19:17
いつも大変お世話になっております。 SQLException「プロトコル違反です。」というエラーが発生し、 原因が分からず、困っています・・・。 発生個所は下記のメソッドです。 このメソッドで、コネクションを取得しており、 全機能が、このメソッドを使用します。 ----------------------------------------------------------------------------------- public Connection getConnection() throws Exception { Connection conn = null; try { conn = (LGAS00.getDataSource()).getConnection(); // アイソレーションレベルを設定する前に一度コミットを //発行する必要がある(下位Oracleバージョンの制約) conn.commit(); conn.setAutoCommit(true); conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED); checkConnectionLeak(conn); } catch(SQLException e) { if(conn != null) { conn.close(); } throw new SQLException("LGAS00.getConnection() " + e.getMessage()); } catch(Exception e) { if(conn != null) { conn.close(); } throw new Exception(this.getClass().getName() + ":getConnection() " + e.getMessage()); } return conn; } ----------------------------------------------------------------------------------- ※実行環境※ JDK1.4.2_06 Oracle 9i Tomcat4.1.24 |
|
投稿日時: 2005-07-29 22:39
どこで例外が発生しているのでしょうか?
コネクションの取得 コミット オートコミットオフ 分離レベルの設定 : 色々やってますよね。どのタイミングですか? |
|
投稿日時: 2005-07-29 23:00
エラーが出て困っているという書き込みは非常に多いですが、
そういう場合は、 ・例外なのかエラーなのか ・スタックトレースをコピペ ・エラー箇所だけではなく、関連箇所も提示 をキチンと書くようにしましょう。 原因を究明できないので憶測でしかお話ができないと思います。 また、コードを貼り付ける時にはBBコードのコードタグを使用してください。 |
|
投稿日時: 2005-08-04 10:55
Oracleではトランザクションの開始後、トランザクションアイソレーションの変更は出来なかったと思います。
setAutoCommit()とsetTransactionIsolation()の順番をかえてもだめですか? |
1