- PR -

「プロトコル違反です。」エラーについて

1
投稿者投稿内容
fujie
会議室デビュー日: 2005/04/13
投稿数: 15
投稿日時: 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

YOU@IT
ぬし
会議室デビュー日: 2002/03/29
投稿数: 284
お住まい・勤務地: 大阪
投稿日時: 2005-07-29 22:39
どこで例外が発生しているのでしょうか?

コネクションの取得
コミット
オートコミットオフ
分離レベルの設定
  :
色々やってますよね。どのタイミングですか?

かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-07-29 23:00
エラーが出て困っているという書き込みは非常に多いですが、
そういう場合は、
・例外なのかエラーなのか
・スタックトレースをコピペ
・エラー箇所だけではなく、関連箇所も提示
をキチンと書くようにしましょう。

原因を究明できないので憶測でしかお話ができないと思います。
また、コードを貼り付ける時にはBBコードのコードタグを使用してください。
未記入
常連さん
会議室デビュー日: 2005/02/23
投稿数: 20
投稿日時: 2005-08-04 10:55
Oracleではトランザクションの開始後、トランザクションアイソレーションの変更は出来なかったと思います。
setAutoCommit()とsetTransactionIsolation()の順番をかえてもだめですか?
1

スキルアップ/キャリアアップ(JOB@IT)