【问题标题】:getting error "ClassNotFoundException" in wicket在检票口中出现错误“ClassNotFoundException”
【发布时间】:2014-07-24 16:23:00
【问题描述】:

我正在 Wicket 中创建一个包含一些数据库查询的应用程序。当我尝试从本地计算机上的 Tomcat 运行它时,这工作正常。但是,当尝试将其上传到服务器或我在其上执行 mvn 包时,然后我尝试在服务器上运行它时出现错误“ClassNotFoundException: com.mysql.jdbc.Driver”

我确实在我的代码中调用了 com.mysql.jdbc.Driver:

Class.forName("com.mysql.jdbc.Driver"); 字符串 url1 = "jdbc:mysql://localhost/smart_one";

但是,在部署项目并从 Eclipse 运行之前,这可以正常工作。

我尝试在服务器上使用 glassFish 和 tomcat。我也试过做一个 mvn 包并将它部署在我的本地主机上,它仍然给我同样的错误。

这是我的 pom.xml 文件:

<properties>
    <wicket.version>6.16.0</wicket.version>
    <jetty.version>7.6.13.v20130916</jetty.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <!-- allowed values: R7, 1.0, 1.5, 2.0 or none -->
    <wtp.version>none</wtp.version>
</properties>
<dependencies>
    <!--  WICKET DEPENDENCIES -->
    <dependency>
        <groupId>org.apache.wicket</groupId>
        <artifactId>wicket-core</artifactId>
        <version>${wicket.version}</version>
    </dependency>
    <!-- OPTIONAL DEPENDENCY
    <dependency>
        <groupId>org.apache.wicket</groupId>
        <artifactId>wicket-extensions</artifactId>
        <version>${wicket.version}</version>
    </dependency>
    -->

    <!-- LOGGING DEPENDENCIES - LOG4J -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.6.4</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
    </dependency>

    <!--  JUNIT DEPENDENCY FOR TESTING -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.11</version>
        <scope>test</scope>
    </dependency>

    <!--  JETTY DEPENDENCIES FOR TESTING  -->
    <dependency>
        <groupId>org.eclipse.jetty.aggregate</groupId>
        <artifactId>jetty-all-server</artifactId>
        <version>${jetty.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.wicket</groupId>
        <artifactId>wicket-auth-roles</artifactId>
        <version>6.16.0</version>
    </dependency>
</dependencies>

【问题讨论】:

  • 好吧...如果没有 a) 查看 pom 的相关部分 b) 有关如何访问数据库的更多信息(如 JPA 或 JDBC 或....),这几乎是不可能回答的) 有关如何管理数据库访问的更多信息(如 JNDI 或硬编码的 url 或...)
  • 感谢您为我调查此事。我意识到我的 jdbc 驱动程序未包含在 pom 文件中,当我这样做时它开始工作。

标签: mysql tomcat deployment wicket


【解决方案1】:

所以我意识到,当我部署项目时,我需要将 jdbc 驱动程序添加到我的依赖项中。

这是我必须在依赖项下添加到我的 pom.xml 文件中的内容:

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

【讨论】:

  • 在回答您自己的问题时,请确保其他人理解这是一个答案,而不是随意评论。
  • 感谢您告诉我。
猜你喜欢
  • 2011-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-30
  • 2017-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多