我以前用DB2时也出现过内似问题,
如果你用的是 Windows ,运行批处理脚本把 DB2 安装切换到遵守 JDBC 2 的驱动程序。批处理脚本的缺省位置是 C:\Program Files\SQLLIB\java12\usejdbc2.bat。确保启动脚本前停止所有 DB2 服务。在 AIX 和 Solaris 系统上,选择 JDBC 2 驱动程序库(缺省位置是 /home/db2inst1/sqllib/java12/db2java.zip)和非 JDBC 1 驱动程序库这样应该就可以搞定!!
GOOD LUCK!!
如果你用的是 Windows ,运行批处理脚本把 DB2 安装切换到遵守 JDBC 2 的驱动程序。批处理脚本的缺省位置是 C:\Program Files\SQLLIB\java12\usejdbc2.bat。确保启动脚本前停止所有 DB2 服务。在 AIX 和 Solaris 系统上,选择 JDBC 2 驱动程序库(缺省位置是 /home/db2inst1/sqllib/java12/db2java.zip)和非 JDBC 1 驱动程序库这样应该就可以搞定!!
GOOD LUCK!!
[03-6-4 11:52:15:116 CST] 40a41db9 WebGroup I SRVE0180I: [BasicWeb] [/BasicWeb] [Servlet.LOG]: /jsp/cust/test.jsp: init
[03-6-4 11:52:16:297 CST] 40a41db9 WebGroup E SRVE0026E: [Servlet 错误]-[[IBM][JDBC Driver] CLI0616E 打开套接字时出错。SQLSTATE=08S01]:COM.ibm.db2.jdbc.DB2Exception: [IBM][JDBC Driver] CLI0616E 打开套接字时出错。SQLSTATE=08S01
at COM.ibm.db2.jdbc.net.SQLExceptionGenerator.socketException(SQLExceptionGenerator.java:589)
at COM.ibm.db2.jdbc.net.DB2Connection.create(DB2Connection.java:251)
at COM.ibm.db2.jdbc.net.DB2Connection.<init>(DB2Connection.java:200)
at COM.ibm.db2.jdbc.net.DB2Driver.connect(DB2Driver.java:215)
at java.sql.DriverManager.getConnection(DriverManager.java:543)
at java.sql.DriverManager.getConnection(DriverManager.java:194)
at org.apache.jsp._test._jspService(_test.java:79)
at com.ibm.ws.webcontainer.jsp.runtime.HttpJspBase.service(HttpJspBase.java:89)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:344)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.serviceJspFile(JspServlet.java:598)
at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.service(JspServlet.java:696)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:258)
at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:872)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:491)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:173)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:79)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:199)
at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:182)
at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:331)
at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:432)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:343)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:592)
以dbc开始的connection url?应该是以jdbc开始。
一般DB2的Type 4 Driver监听端口是50000,这要看你的配置了。另外还要保证DB2服务器启动了Type 4服务。
to all:
这和JDBC版本无关,DB2实例服务才会监听50000BTW:
JDBC的话你可以使用db2jstrt 6789这样的命令手工启动JDBC服务,也可以手工制定端口