jdbc连接池问题:org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class 'com.microsoft.jdbc.sqlserver.SQLServerDriver' for connect URL ' jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=FRCSys'tomcat6.0:
context.xml;
<Context>    <!-- Default set of monitored resources -->
    <WatchedResource>WEB-INF/web.xml</WatchedResource>

    <!-- Uncomment this to disable session persistence across Tomcat restarts -->
    <!--
    <Manager pathname="" />
    -->    <!-- Uncomment this to enable Comet connection tacking (provides events
         on session expiration as well as webapp lifecycle) -->
    <!--
    <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
    -->
 <Resource name="jdbc/TestJDBC"    
        auth="Container"        
       type="javax.sql.DataSource"        
         driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"        
         url=" jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=FRCSys"        
         username="sa"        
         password="123456"        
         maxActive="100"        
        maxIdle="30"        
        maxWait="1000" />   
</Context>
server.xml:
  <GlobalNamingResources>
    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users
    -->
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
<Resource name="jdbc/TestJDBC"  auth="Container" type="javax.sql.DataSource"
 password="123456" username="sa"  driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" 
 url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=FRCSys"  maxActive="100"  maxIdle="30"  maxWait="1000"/>
  </GlobalNamingResources>web.xml:
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/TestJDBC</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
错误:rg.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class 'com.microsoft.jdbc.sqlserver.SQLServerDriver' for connect URL ' jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=FRCSys'
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1150)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:94)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:264)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1143)
... 20 more

解决方案 »

  1.   

    你的jdbc驱动jar包有没拷进tomcat下的lib文件夹内
      

  2.   

    不在乎两个原因。一个是driverClassName写错了。一个是没有把sql的jar包拷进tomcat下面的lib文件夹。
      

  3.   

    <Resource name="com.dayang.datasource.dyusermanager"
                auth="Container"
                type="javax.sql.DataSource"
                username="sa"
                password="aaaa"
                driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
                url="jdbc:sqlserver://100.0.0.79:1433;databaseName=DYUVDB"/>
    驱动为sqljdbc4.jar
      

  4.   

    你用的是 sql2000还是sql2005
    我看你的驱动和url是2000的
    另外,把驱动包拷贝到lib下要重起服务,才可以
      

  5.   

    <Resource name="jdbc/TestJDBC"    
            auth="Container"        
          type="javax.sql.DataSource"        
            driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"        
            url=" jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=FRCSys"        
            username="sa"        
            password="123456"        
            maxActive="100"        
            maxIdle="30"        
            maxWait="1000" /> lz把红色部分改成com.jdbc.microsoft.sqlserver.SQLServerDriver试试看