简体   繁体   English

Amazon ec2找不到org.apache.tomcat.dbcp.dbcp.BasicDataSource

[英]Amazon ec2 can't find org.apache.tomcat.dbcp.dbcp.BasicDataSource

I am trying to connect to MySQL service using the following code, but it cannot initialize the database class: 我正在尝试使用以下代码连接到MySQL服务,但它无法初始化数据库类:

import org.apache.tomcat.dbcp.dbcp.BasicDataSource;

public class Database {

    private static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
    private static final BasicDataSource dataSource = new BasicDataSource();

    static {
        dataSource.setDriverClassName(JDBC_DRIVER);
        dataSource.setUrl(ServerConfig.DB_URL);
        dataSource.setUsername(ServerConfig.DB_USERNAME);
        dataSource.setPassword(ServerConfig.DB_PASSWORD);
    }

    ...
}

Here's the ServerConfig class: 这是ServerConfig类:

public class ServerConfig {

    public static final String DB_URL = "jdbc:mysql://localhost:3306/relay";
    public static final String DB_USERNAME = "my_username";
    public static final String DB_PASSWORD = "mypassword";

    public static final boolean DEBUG = true;
}

Here's the stack trace: 这是堆栈跟踪:

java.lang.NoClassDefFoundError: Could not initialize class com.relayapp.server.database.Database
        at com.relayapp.server.model.User.add(User.java:125)
        at com.relayapp.server.request.AddUser.processRequest(AddUser.java:51)
        at com.relayapp.server.request.RelayRequestServlet.doPost(RelayRequestServlet.java:55)
        at com.relayapp.server.request.RelayRequestServlet.doGet(RelayRequestServlet.java:22)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        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:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:620)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:745)

The user credentials seem to be correct, and I can run the mysql command successfully. 用户凭据似乎是正确的,并且我可以成功运行mysql命令。 What am I doing wrong? 我究竟做错了什么?

The problem was with the package org.apache.tomcat.dbcp.dbcp.BasicDataSource . 问题出在org.apache.tomcat.dbcp.dbcp.BasicDataSource软件包中。

This answer helped fix it. 这个答案有助于解决问题。 Instead of the /usr/share/java folder, tomcat was in the usr/share/tomcat7 folder, and I ran the command: tomcat usr/share/tomcat7文件夹中,而不是/usr/share/java文件夹,我运行了以下命令:

sudo wget -O /usr/share/tomcat7/tomcat-dbcp-7.0.57.jar http://search.maven.org/remotecontent?filepath=org/apache/tomcat/tomcat-dbcp/7.0.57/7tomcat-dbcp-7.0.57.jar

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何解决这个 java.lang.ClassCastException: org.apache.tomcat.dbcp.dbcp.BasicDataSource cannot be cast to org.apache.tomcat.jdbc.pool.DataSource? - how to solve this java.lang.ClassCastException: org.apache.tomcat.dbcp.dbcp.BasicDataSource cannot be cast to org.apache.tomcat.jdbc.pool.DataSource? Spring MVC Web应用程序找不到org.apache.commons.dbcp.BasicDataSource类 - Spring MVC web app cannot find org.apache.commons.dbcp.BasicDataSource class org.apache.tomcat.dbcp.dbcp无法解析为一种类型 - org.apache.tomcat.dbcp.dbcp cannot be resolved to a type 找不到org.apache.commons.dbcp.BasicDataSource类 - Class org.apache.commons.dbcp.BasicDataSource not found java.lang.ClassNotFoundException:org.apache.commons.dbcp.BasicDataSource - java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource Apache Commons DBCP 连接对象问题,线程:org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper 中的 ClassCastException - Apache Commons DBCP connection object problem, Thread: ClassCastException in org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper 找不到基本名称 org.apache.commons.dbcp2.LocalStrings 的捆绑包 - Can't find bundle for base name org.apache.commons.dbcp2.LocalStrings org.apache.tomcat.dbcp.dbcp.PoolingDataSource $ PoolGuardConnectionWrapper无法强制转换为com.mysql.jdbc.Connection - org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper cannot be cast to com.mysql.jdbc.Connection java.lang.AbstractMethodError:at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.setCharacterStream(DelegatingPreparedStatement.java:328) - java.lang.AbstractMethodError: at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.setCharacterStream(DelegatingPreparedStatement.java:328) org.apache.tomcat.dbcp.dbcp2.PoolingDataSource$PoolGuardConnectionWrapper 无法转换为 oracle.jdbc.OracleConnection - org.apache.tomcat.dbcp.dbcp2.PoolingDataSource$PoolGuardConnectionWrapper cannot be cast to oracle.jdbc.OracleConnection
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM