TOMCAT5.0.30中使用JDBC 出现如下问题~!
这是怎么回事呀~1我刚学弄不懂~!
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: Unable to get connection, DataSource invalid: "org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.)"
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:846)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779)
org.apache.jsp.index_jsp._jspService(index_jsp.java:132)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.)"
org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.getConnection(QueryTagSupport.java:276)
org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doStartTag(QueryTagSupport.java:159)
org.apache.jsp.index_jsp._jspx_meth_sql_query_0(index_jsp.java:259)
org.apache.jsp.index_jsp._jspService(index_jsp.java:116)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.0.30 logs.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
server.XML文件如下
…………
        <Logger className="org.apache.catalina.logger.FileLogger"
                 directory="logs"  prefix="localhost_log." suffix=".txt"
            timestamp="true"/>
   
           <Context path="/Gd_moldue" docBase="Gd_moldue" debug="5" reloadable="true" crossContext="true">
              
   <Resource name="jdbc/bysjdb" auth="Container" type="javax.sql.DataSource"/>               <ResourceParams name="jdbc/bysjdb">    <parameter> <name>factory</name>                    <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>               </parameter>
    
   <parameter>                    <name>driverClassName</name>                    <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>               </parameter>
   
   <parameter> <name>url</name>                    <value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=bysjbase</value>               </parameter>

   <parameter>                    <name>username</name>                    <value>lcpcy</value>               </parameter>               <parameter>     <name>password</name>     <value>277715890</value>               </parameter>
               
   <parameter>                  <name>maxActive</name>                  <value>100</value>              </parameter>              <parameter>                   <name>maxIdle</name>                   <value>30</value>             </parameter>             <parameter>                   <name>maxWait</name>                   <value>10000</value>            </parameter>            <parameter>                   <name>removeAbandoned</name>                   <value>true</value>            </parameter>            <parameter>                   <name>removeAbandonedTimeout</name>                   <value>180</value>            </parameter>            <parameter>                   <name>logAbandoned</name>                   <value>false</value>            </parameter>            <parameter>                    <name>username</name>                    <value>sa</value>            </parameter>            <parameter>     <name>password</name>     <value>277715890</value>            </parameter>            </ResourceParams>           </Context>
     
   </Host>    </Engine>  </Service></Server>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
web.xml如下
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2002 by ObjectLearn. All Rights Reserved. -->
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<!-- Remove the comments below to define a servlet.          -->
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
<!--     <servlet>                                           -->
<!--       <servlet-name>MyServlet</servlet-name>            -->
<!--       <servlet-class>examples.MyServlet</servlet-class> -->
<!--       <init-param>                                      -->
<!--         <param-name>myparam</param-name>                -->
<!--         <param-value>12345</param-value>                -->
<!--       </init-param>                                     -->
<!--     </servlet>                                          -->
<!--                                                         -->
<!--                                                         -->
<!--     <servlet-mapping>                                   -->
<!--           <servlet-name>MyServlet</servlet-name>        -->
<!--           <url-pattern>/mine/*</url-pattern>            -->
<!--     </servlet-mapping>                                  -->
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++ --> <welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> <error-page>
<error-code>404</error-code>
<location>/error.jsp</location>
</error-page>
<description>SQL Test App</description>
    <resource-ref>
<description>SQLDB Connection</description>
<res-ref-name>jdbc/bysjdb</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref></web-app>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
大家帮忙救命呀~~~~~~~!

解决方案 »

  1.   

    从你的配置的server.xml和web.xml来看是没有错的哈!你再看看你自己的源程序有没有问题!比如你的驱动程序是否copy到相应的目录下面了等,这个事情千万要仔细哟!再看看吧!
      

  2.   

    应该是SQLServer 2000 没打sp3的问题
      

  3.   

    不用连接池可以连接成功嘛,只接把连接字符串放到页面代码中测试一下。测试成功了再来配连接池。也许是JDBC本身的问题,也有可能是sql server的问题。org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory ([Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.)"
      

  4.   

    还有一个大概是context.xml 要写<Re..link>什么的
    netbeans5.0中搜索"连接池"有完整的写法
      

  5.   

    http://community.csdn.net/Expert/topic/4241/4241477.xml?temp=.2866327http://community.csdn.net/Expert/topic/4302/4302655.xml?temp=.137768仔细看着两个帖子你会找到答案
      

  6.   

    我的测试代码~!
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
    <%@page language="java" contentType="text/html; charset=gb2312"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%><html>
    <head>
    <title>Welcome</title>
    </head>
    <body>
    <center>Welcome</center>
    <%
         out.println("爱着,痛着");
    %>
        <c:set var="user" value="我爱……"/>
        <c:out value="${user}"/>
          <%-- 这是利用JSTL 打印1到10 --%>
          利用JSTL 打印1到10 <p>
        <c:forEach var="i" begin="1" end="10" step="1">
          <c:out value="${i}" />
          <br/>
        </c:forEach>
        
        <%-- 这是利用JSP的scriptlet 打印1到10 --%>
        <p>    利用JSP的scriptlet 打印1到10   <p>
        <%  for(int i=1;i<=10;i++)  {%>
          <%=i%><br/>
        <%  } %>
        <sql:setDataSource var="bsdb" dataSource="jdbc/bysjdb"/>
        <sql:query var="qy1" dataSource="${bsdb}">
               select * from Users
        </sql:query>
        <table border="1">
         <c:forEach var="row" items="${qy1.rows}">
               <tr>
                   <td>name:<c:out value="${row.name}"/></td>
       <td>password:<c:out value="${row.password}"/></td>
               </tr>
        </c:forEach>
        </table>
    </body>
    </html>
      

  7.   

    运行是的ECLIPSE的控制台信息:
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    2006-4-15 19:13:24 org.apache.coyote.http11.Http11Protocol init
    信息: Initializing Coyote HTTP/1.1 on http-8080
    2006-4-15 19:13:24 org.apache.catalina.startup.Catalina load
    信息: Initialization processed in 4000 ms
    2006-4-15 19:13:25 org.apache.catalina.core.StandardService start
    信息: Starting service Catalina
    2006-4-15 19:13:25 org.apache.catalina.core.StandardEngine start
    信息: Starting Servlet Engine: Apache Tomcat/5.0.30
    2006-4-15 19:13:25 org.apache.catalina.core.StandardHost start
    信息: XML validation disabled
    2006-4-15 19:13:26 org.apache.catalina.core.StandardHost getDeployer
    信息: Create Host deployer for direct deployment ( non-jmx ) 
    2006-4-15 19:13:26 org.apache.catalina.core.StandardHostDeployer install
    信息: Processing Context configuration file URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\Catalina\localhost\admin.xml
    2006-4-15 19:13:30 org.apache.catalina.core.StandardHostDeployer install
    信息: Processing Context configuration file URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\Catalina\localhost\balancer.xml
    2006-4-15 19:13:30 org.apache.catalina.core.StandardHostDeployer install
    信息: Processing Context configuration file URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\Catalina\localhost\manager.xml
    2006-4-15 19:13:30 org.apache.catalina.core.StandardHostDeployer install
    信息: Installing web application at context path  from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\ROOT
    2006-4-15 19:13:30 org.apache.catalina.core.StandardHostDeployer install
    信息: Installing web application at context path /tomcat-docs from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\tomcat-docs
    2006-4-15 19:13:31 org.apache.catalina.core.StandardHostDeployer install
    信息: Installing web application at context path /jsp-examples from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\jsp-examples
    2006-4-15 19:13:31 org.apache.catalina.core.StandardHostDeployer install
    信息: Installing web application at context path /servlets-examples from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\servlets-examples
    2006-4-15 19:13:31 org.apache.catalina.core.StandardHostDeployer install
    信息: Installing web application at context path /webdav from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\webdav
    2006-4-15 19:13:32 org.apache.catalina.core.StandardHostDeployer install
    信息: Installing web application at context path /ch10 from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\ch10
    2006-4-15 19:13:32 org.apache.coyote.http11.Http11Protocol start
    信息: Starting Coyote HTTP/1.1 on http-8080
    2006-4-15 19:13:33 org.apache.jk.common.ChannelSocket init
    信息: JK2: ajp13 listening on /0.0.0.0:8009
    2006-4-15 19:13:33 org.apache.jk.server.JkMain start
    信息: Jk running ID=0 time=16/78  config=C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\jk2.properties
    2006-4-15 19:13:33 org.apache.catalina.startup.Catalina start
    信息: Server startup in 8500 ms
    AbandonedObjectPool is used (org.apache.commons.dbcp.AbandonedObjectPool@92de02)
       LogAbandoned: false
       RemoveAbandoned: true
       RemoveAbandonedTimeout: 180
      

  8.   

    我也遇到这样的问题:
    但是解决了,是这样的,你下个sqlserver sp3先打上这样补丁,然后再下个jdbc for sqlserver sp3 也安装上,应该就没有什么问题了,一般这样的问题出现在xp系统之中.
    如在安装sqlserver sp3时出现文件挂起的话,这样解决就可以了
    打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager中找到PendingFileRenameOperations项目,并删除它。这样就可以清除安装暂挂项目
      

  9.   

    谢谢大家已经解决了,呵呵~!
    SP4打上OK`!
    散分~!