//在WEB.XML 引用
<resource-ref>
    <description>connectDB test</description>
    <res-ref-name>jdbc/bn</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
到底是哪里错了?

解决方案 »

  1.   


    错误提示:
    已经取得DATABASE:org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'nul
      

  2.   

    有没有 exception trace,请贴出来吧..
      

  3.   


    //详细错误信息
    org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
    at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:780)
    at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
    at org.apache.jsp.conpool_jsp._jspService(conpool_jsp.java:63)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
    at java.lang.Thread.run(Thread.java:595)驱动程序表JTDS 已经放到了common\lib 下面;
      

  4.   

    接上面的错误信息C:\Borland\JBuilder2006\jdk1.5\bin\javaw -classpath "C:\Borland\JBuilder2006\thirdparty\jakarta-tomcat-5.0.28\bin\bootstrap.jar;C:\Borland\JBuilder2006\jdk1.5\lib\tools.jar"  "-Dcatalina.home=C:/Borland/JBuilder2006/thirdparty/jakarta-tomcat-5.0.28"  org.apache.catalina.startup.Bootstrap -config "D:\workTest\利用TOMCAT 配制文件连接数据库\tomcatConnectDB\Tomcat\conf\server8080.xml" start 
    2006-1-14 16:12:21 org.apache.coyote.http11.Http11Protocol init
    信息: Initializing Coyote HTTP/1.1 on http-8080
    2006-1-14 16:12:21 org.apache.catalina.startup.Catalina load
    信息: Initialization processed in 2187 ms
    2006-1-14 16:12:21 org.apache.catalina.core.StandardService start
    信息: Starting service Catalina
    2006-1-14 16:12:22 org.apache.catalina.core.StandardEngine start
    信息: Starting Servlet Engine: Apache Tomcat/5.0.28
    2006-1-14 16:12:22 org.apache.catalina.core.StandardHost start
    信息: XML validation disabled
    2006-1-14 16:12:23 org.apache.catalina.core.StandardHost getDeployer
    信息: Create Host deployer for direct deployment ( non-jmx ) 
    2006-1-14 16:12:23 org.apache.coyote.http11.Http11Protocol start
    信息: Starting Coyote HTTP/1.1 on http-8080
    2006-1-14 16:12:23 org.apache.catalina.startup.Catalina start
    信息: Server startup in 1547 ms
    org.apache.commons.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'
    at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:780)
    at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
    at org.apache.jsp.conpool_jsp._jspService(conpool_jsp.java:63)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
    at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
    at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
    at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.sql.SQLException: No suitable driver
    at java.sql.DriverManager.getDriver(DriverManager.java:243)
    at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:773)
    ... 32 more
      

  5.   

    把你的 
    <Resource /> 和 <ResourceParams />
    都挪到 <GlobalNamings /> 下面,当作 <GlobalNamings /> 的子节点元素。然后再 <Context /> 添加一个子元素:如这样:
    <Context path="/tomcatConnectDB" docBase="tomcatConnectDB">
       <!-- name 是 java:comp/env/ 后面的名字, 
        global 是 服务器配置的JNDI 名字,建立一个引用 
       -->
       <ResourceLink name="jdbc/bn" global="jdbc/bn" type="javax.sql.DataSource" />
    </Context>
      

  6.   

    在server.xml 当中没有<GlobalNamings /> 这个元素只有</GlobalNamingResources>
    这个元素;呵呵!!试了一下,将<Resource /> 和 <ResourceParams />都挪到 <GlobalNamingResources/> 下面
    然后再 <Context /> 添加一个子元素:如这样:
    <Context path="/tomcatConnectDB" docBase="tomcatConnectDB">
       <!-- name 是 java:comp/env/ 后面的名字, 
        global 是 服务器配置的JNDI 名字,建立一个引用 
       -->
       <ResourceLink name="jdbc/bn" global="jdbc/bn" type="javax.sql.DataSource" />
    </Context>结果还是出现同样的错误!
      

  7.   

    jtds的驱动的url不是这样写的jdbc:jtds:sqlserver://localhost:1433;DatabaseName=pubs
    应该改成jdbc:jtds:sqlserver://localhost:1433/pubs