Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JBoss:未找到MySQL驱动程序_Java_Mysql_Jdbc_Jboss - Fatal编程技术网

Java JBoss:未找到MySQL驱动程序

Java JBoss:未找到MySQL驱动程序,java,mysql,jdbc,jboss,Java,Mysql,Jdbc,Jboss,我正在JBoss7.1.1下使用MySQL开发web应用程序。 我已经按照其中一个教程在我的服务器上安装了MySQL驱动程序。我创建了适当的目录,在其中放置了驱动程序: modules |--com |--mysql |--main |--mysql-connector-java-5.1.18-bin.jar |--module.xml 我的module.xml如下所示: <?xml version="1.0" encoding="U

我正在JBoss7.1.1下使用MySQL开发web应用程序。 我已经按照其中一个教程在我的服务器上安装了MySQL驱动程序。我创建了适当的目录,在其中放置了驱动程序:

modules
|--com
   |--mysql
      |--main
         |--mysql-connector-java-5.1.18-bin.jar
         |--module.xml
我的
module.xml
如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.0" name="com.mysql">  
  <resources>  
    <resource-root path="mysql-connector-java-5.1.18-bin.jar"/>  
  </resources>  
  <dependencies>  
    <module name="javax.api"/>  
  </dependencies>  
</module>
然后,我尝试将其注入我的bean中,并像这样使用:

@Startup
@Singleton
public class StartupBean {

    private static final Logger LOGGER = LogManager.getLogger(StartupBean.class);

    @Resource(mappedName = "java:jboss/datasources/my_db")
    private DataSource ds;

    @PostConstruct
    public void init() {
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            LOGGER.error("MySQL driver not found!", e);
        }
    }
}
不幸的是,当我试图找到驱动程序时,我得到:
java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

我还尝试不检查驱动程序,只调用
ds.getConnection()
。没有任何例外。但当我尝试调用连接上的方法时,我得到:
java.lang.AbstractMethodError:org.jboss.jca.adapters.jdbc.jdk6.WrappedConnectionJDK6.getSchema()


这就是问题所在。配置连接时遗漏了什么?数据源是根据日志绑定的。我也尝试过更新的驱动程序版本(5.1.35-bin),但它没有改变任何东西。my mysql db的版本是5.6.24。

您是否尝试将jdbc驱动程序包含在您的web inf/lib文件夹中?此外,如果您使用eclipse或netbeans开发应用程序,请确保在项目库中添加驱动程序。我正在使用Intellij adn gradle开发我的应用程序。ear的WEB-INF?稍后将尝试。我已将其放置在ear/lib目录中。现在没有
ClassNotFoundException
,但我仍然得到第二个错误。
@Startup
@Singleton
public class StartupBean {

    private static final Logger LOGGER = LogManager.getLogger(StartupBean.class);

    @Resource(mappedName = "java:jboss/datasources/my_db")
    private DataSource ds;

    @PostConstruct
    public void init() {
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            LOGGER.error("MySQL driver not found!", e);
        }
    }
}