在 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/