jndi配置: <Resource name="jta/db2front" auth="Container" type="javax.sql.DataSource" driverClassName="com.ibm.db2.jcc.DB2Driver" url="****" username="******" password="******" removeAbandoned="true" removeAbandonedTimeout="600" logAbandoned="true" initialSize="0" testOnBorrow="false" testWhileIdle="false" validationQuery="select current date from sysibm.sysdummy1" maxActive="20" maxIdle="5" maxWait="-1"/>
用jndi连接数据源在第一次请求时报错如下,连续几次请求后正常。不知为什么?报错如下: org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [-4499]; --- The error occurred while applying a parameter map. --- Check the DimSdhDept.findDimSdhDeptByObject-InlineParameterMap. --- Check the statement (query failed). --- Cause: com.ibm.db2.jcc.b.DisconnectException: [ibm][db2][jcc][t4][2030][11211] 检测到了通信错误。所使用的通信协议:TCP/IP。 所使用的通信 API:SOCKETS。检测到错误的位置:T4Agent.sendRequest()。 用于检测错误的通信功能:OutputStream.flush()。特定于协议的错误代码 没有进程来读取写入管道的数据。、* 和 0。消息:没有进程来读取写入管道的数据。; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException: --- The error occurred while applying a parameter map. --- Check the DimSdhDept.findDimSdhDeptByObject-InlineParameterMap. --- Check the statement (query failed). --- Cause: com.ibm.db2.jcc.b.DisconnectException: [ibm][db2][jcc][t4][2030][11211] 检测到了通信错误。所使用的通信协议:TCP/IP。 所使用的通信 API:SOCKETS。检测到错误的位置:T4Agent.sendRequest()。 用于检测错误的通信功能:OutputStream.flush()。特定于协议的错误代码 没有进程来读取写入管道的数据。、* 和 0。消息:没有进程来读取写入管道的数据。 Caused by: com.ibatis.common.jdbc.exception.NestedSQLException: --- The error occurred while applying a parameter map. --- Check the DimSdhDept.findDimSdhDeptByObject-InlineParameterMap. --- Check the statement (query failed). --- Cause: com.ibm.db2.jcc.b.DisconnectException: [ibm][db2][jcc][t4][2030][11211] 检测到了通信错误。所使用的通信协议:TCP/IP。 所使用的通信 API:SOCKETS。检测到错误的位置:T4Agent.sendRequest()。 用于检测错误的通信功能:OutputStream.flush()。特定于协议的错误代码 没有进程来读取写入管道的数据。、* 和 0。消息:没有进程来读取写入管道的数据。 Caused by: com.ibm.db2.jcc.b.DisconnectException: [ibm][db2][jcc][t4][2030][11211] 检测到了通信错误。所使用的通信协议:TCP/IP。 所使用的通信 API:SOCKETS。检测到错误的位置:T4Agent.sendRequest()。 用于检测错误的通信功能:OutputStream.flush()。特定于协议的错误代码 没有进程来读取写入管道的数据。、* 和 0。消息:没有进程来读取写入管道的数据。 at com.ibm.db2.jcc.c.a.a(a.java:385) at com.ibm.db2.jcc.c.a.y(a.java:354) at com.ibm.db2.jcc.c.a.l(a.java:312) at com.ibm.db2.jcc.b.p.c(p.java:256) at com.ibm.db2.jcc.b.ih.d(ih.java:2400) at com.ibm.db2.jcc.b.ih.X(ih.java:1457) at com.ibm.db2.jcc.b.ih.execute(ih.java:1441) at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:169) at com.ibatis.sqlmap.engine.execution.SqlExecutor.executeQuery(SqlExecutor.java:185) at com.asiainfo.appanalyze.base.extend.ibatis.PaginatedExecutor.executeQuery(PaginatedExecutor.java:97) at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.sqlExecuteQuery(MappedStatement.java:221) at com.ibatis.sqlmap.engine.mapping.statement.MappedStatement.executeQueryWithCallback(MappedStatement.java:189) ... 86 more Caused by: java.net.SocketException: 没有进程来读取写入管道的数据。 at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:105) at java.net.SocketOutputStream.write(SocketOutputStream.java:149) at com.ibm.db2.jcc.c.gb.b(gb.java:1526) at com.ibm.db2.jcc.c.gb.a(gb.java:1475) at com.ibm.db2.jcc.c.a.y(a.java:348
[该贴被xunifeng于2009-10-12 12:06修改过]
1
banq
2009-10-13 21:48
>SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [-4499];