JBoss7 上的 MySQL : DriverManager says caller does not have permission to load driver

标签 mysql jakarta-ee jdbc jboss jboss7.x

在 jboss 7.1 上部署 Java Web 应用程序时遇到一些问题...

单步查看代码,似乎涉及到类加载;导致扫描简单地跳过驱动程序:

// java.sql.DriverManager
for (int i = 0; i < drivers.size(); i++) {
    DriverInfo di = (DriverInfo)drivers.elementAt(i);

    // If the caller does not have permission to load the driver then 
    // skip it.
    if ( getCallerClass(callerCL, di.driverClassName ) != di.driverClass ) {
    println("    skipping: " + di);
    continue;
    }
    [...]
}

第一轮的驱动程序是“org.h2.Driver”(内置于jboss,对吧?),第二轮的驱动程序是“com.mysql.jdbc.Driver”。两者都会被跳过,导致“找不到合适的驱动程序”。所以,问题是:这是怎么回事?这是一个用 Maven 构建的 war 项目。所有库最终都位于 META-INF/lib 中,包括“mysql-connector-java-5.1.6.jar”。它是 JBoss7 特有的吗?

感谢您的帮助,j

最佳答案

我建议您将 MySQL 驱动程序安装为 JBoss 模块,并将数据源添加到您的 JBoss 配置中。为此,我使用了 reference manual .

关于JBoss7 上的 MySQL : DriverManager says caller does not have permission to load driver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9990699/

相关文章:

javascript - mysqli_fetch_array --> 根据 2 个输入字段更新输入

php - 将 MySQL 数据从不同表传输到 CSV 文件

php - MySql 查询在非常大的表上变慢

java - 使用 Java EE/JPA 检索数据库元信息

java - 错误 java.sql.SQLException : not implemented by SQLite JDBC driver when Retrieving Blob (Image) from Database

c# - IQueryable 来自 Code First Entity Framework 的两个表

java - BeanManager 方法 getReference() 在应用程序初始化期间不可用

java - 挂起 PostgreSQL 进程

java - Oracle 日期转换错误 ORA-01858

sql-server - 从 java 8 连接到 microsoft sql 2008 r2