4

JDBCまたはSpringを使用してWebアプリケーションをSQLServerデータベース(Expressではない)に接続する際に問題が見つかりました。

私のコードのある時点で、私は次のように呼びます。

this.conn = DriverManager.getConnection(db_connect_string, db_userid, db_password);

アプリケーションは正しく実行されていますが、待機していて続行しません。同じことが、次のような別のWebアプリケーションでも発生します。

getJdbcTemplate().query(...)

以下を使用してデータベースを確認すると、次のようになります。

SELECT SPID, STATUS, PROGRAM_NAME, LOGINAME=RTRIM(LOGINAME), HOSTNAME, CMD
FROM MASTER.DBO.SYSPROCESSES
WHERE DB_NAME(DBID) = 'myDB' AND DBID != 0 

接続が開かれているのがわかりますが、「AWAITINGCOMMAND」です。例外は処理されず、何かを待っているだけです。

その接続(監査ログイン)のSQLServerプロファイラーは次を返します。

-- network protocol: TCP/IP
set quoted_identifier on
set arithabort off
set numeric_roundabort off
set ansi_warnings on
set ansi_padding on
set ansi_nulls on
set concat_null_yields_null on
set cursor_close_on_commit off
set implicit_transactions off
set language us_english
set dateformat mdy
set datefirst 7
set transaction isolation level read committed

数週間前まで動作します。SQLServerの構成に関連するものだと思いますが、何も変更しなかったと確信しています。接続が正しく作成されているため、ファイアウォールの問題を除外できます。誰か助けてくれませんか?

ありがとう、アンドレア

4

1 に答える 1

0

Mark Rotteveelが示唆しているように、これは Java 1.6.0_29 のバグです。

于 2012-02-11T09:30:20.687 に答える