【问题标题】:Error Message: Unable to get connection, DataSource invalid: "java.sql.SQLException: Cannot create JDBC driver of class '' for connect URL 'null'" [closed]错误消息:无法获取连接,数据源无效:“java.sql.SQLException:无法为连接 URL 'null' 创建类 '' 的 JDBC 驱动程序”[关闭]
【发布时间】:2015-11-06 03:26:42
【问题描述】:

我目前正在使用以下技术栈:intellj 14.1.5、Spring MVC、tomcat 8.0.28 和 mysql workbench 6.3。我正在尝试连接到我的数据库,但出现错误。我觉得问题出在我的 context.xml 文件上。任何帮助表示赞赏。

我的 context.xml 文件是什么样的:

   <!-- maxTotal: Maximum number of database connections in pool. Make sure you
        configure your mysqld max_connections large enough to handle
        all of your db connections. Set to -1 for no limit.
        -->

   <!-- maxIdle: Maximum number of idle database connections to retain in pool.
        Set to -1 for no limit.  See also the DBCP documentation on this
        and the minEvictableIdleTimeMillis configuration parameter.
        -->

   <!-- maxWaitMillis: Maximum time to wait for a database connection to become available
        in ms, in this example 10 seconds. An Exception is thrown if
        this timeout is exceeded.  Set to -1 to wait indefinitely.
        -->

   <!-- username and password: MySQL username and password for database connections  -->

   <!-- driverClassName: Class name for the old mm.mysql JDBC driver is
        org.gjt.mm.mysql.Driver - we recommend using Connector/J though.
        Class name for the official MySQL Connector/J driver is com.mysql.jdbc.Driver.
        -->

   <!-- url: The JDBC connection url for connecting to your MySQL database.
        -->

   <Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
             maxTotal="100" maxIdle="30" maxWaitMillis="10000"
             username="root" password="1234" driverClassName="com.mysql.jdbc.Driver"
             url="jdbc:mysql://localhost:3306/module1"/>

我在 web.xml 中添加的内容:

<resource-ref>
    <description>DB Connection</description>
    <res-ref-name>jdbc/TestDB</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
</resource-ref>

我的 jsp 文件是什么样的:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
  <html>
      <body>
      <h1>Test1</h1>

       <sql:query var="rs" dataSource="jdbc/TestDB">
             select id from myguests
        </sql:query>

       <c:forEach var="row" items="${rs.rows}">
             ID: ${row.id}<br/>
        </c:forEach>

      </body>
   </html>

我的 pom.xml 文件中还有以下依赖项:

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.37</version>
    </dependency>

【问题讨论】:

  • 不要在此处发布指向文字图片的链接,甚至是图片。贴出文字。完全浪费您的时间和我们的带宽。
  • 我很抱歉。我是堆栈溢出的新手,没有意识到这会是一个问题。

标签: mysql tomcat intellij-idea web.xml context.xml


【解决方案1】:

我能够解决我的问题。看来我需要在 webapp 目录中创建一个 META-INF 目录。一旦我这样做了,我将 context.xml 文件放在 META-INF 目录中,它纠正了这个问题。

【讨论】:

    猜你喜欢
    • 2011-11-08
    • 2018-01-14
    • 2011-05-14
    • 2016-11-28
    • 2014-07-21
    • 2011-07-06
    • 2015-04-15
    • 2015-12-18
    相关资源
    最近更新 更多