首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在JBoss7.1.1中创建mysql数据源

无法在JBoss7.1.1中创建mysql数据源
EN

Stack Overflow用户
提问于 2016-06-11 10:55:58
回答 1查看 623关注 0票数 0

我正在使用jboss as 7.1.1 final版本。我试图通过管理控制台将mysql driver添加到服务器。我可以这样做,但当我去创建数据源时,我没有找到列出的驱动程序。我按照以下步骤将驱动程序添加到服务器,如以下链接所述:j2ee/ch03s03s03.html#d0e4128

我遵循通过网络控制台安装JDBC驱动程序的步骤3,因为我已经创建了一个管理user.To,概述了我所做的工作。

  1. 我添加了一个驱动程序文件E:\DevSoftwares\servers\jboss\jboss-as-7.1.1.Final\modules\com\mysql\main\META-INF\services\java.sql.Driver及其内容如下:com.mysql.jdbc.jdbc2.optional.MysqlXADataSource(完全限定的驱动程序类名)。
  2. 在module.xml中创建E:\DevSoftwares\servers\jboss\jboss-as-7.1.1.Final\modules\com\mysql\main\文件及其内容如下:
  3. mysql-connector-java-5.0.8-bin.jar中添加E:\DevSoftwares\servers\jboss\jboss-as-7.1.1.Final\modules\com\mysql\main\文件
  4. 运行jar -uf mysql-connector-java-5.0.8-bin.jar META-INF\services\java.sql.Driver命令来修改jar。运行此命令后,我可以看到一个services\java.sql.Driver文件,其驱动程序类名如步骤1所示,位于jar文件的META文件夹中,该文件夹在运行命令之前并不存在。

我从以下链接获得了用于JBoss7.x的mysql驱动程序类的完全限定名:j2ee/ch03s03s07.html#d0e5769

当我试图启用已部署的jar时,我在服务器控制台中得到了一个异常,声明:无法实例化驱动程序类com.mysql.jdbc.jdbc2.optional.MysqlXADataSource

java/lang.ClassCastException : com.mysql.jdbc.jdbc2.optional.MysqlXADataSource.

但是,我检查了mysql-connector-java-5.0.8-bin.jar,并能够在与类完全限定名相同的目录结构中找到上面提到的驱动程序类。

我无法弄清楚为什么我会得到这个异常,或者我在设置过程中做错了什么,这导致了我正在使用的这个issue.The平台的窗口。有人能帮我一下吗。

注:module.xml的内容

代码语言:javascript
复制
<?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.0.8-bin.jar"/>
  </resources>
  <dependencies>
     <module name="javax.api"/>
     <module name="javax.transaction.api"/>
  </dependencies>
 </module>`
EN

回答 1

Stack Overflow用户

发布于 2016-06-11 11:54:50

请检查您是否已将MySQL数据源配置添加到standalone.xml或等效XML文件中:-

代码语言:javascript
复制
<subsystem xmlns="urn:jboss:domain:datasources:1.0">
        <datasources>
            <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true">
                <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</connection-url>
                <driver>h2</driver>
                <security>
                    <user-name>sa</user-name>
                    <password>sa</password>
                </security>
            </datasource>
            <datasource jndi-name="java:jboss/datasources/MySqlExampleDS" pool-name="MySqlExampleDS" enabled="true" use-java-context="true">
                <connection-url>jdbc:mysql://localhost:3306/jboss7db</connection-url>
                <driver>mysql</driver>
                <pool>
                    <max-pool-size>30</max-pool-size>
                </pool>
                <security>
                    <user-name>root</user-name>
                    <password>admin</password>
                </security>
            </datasource>
            <drivers>
                <driver name="h2" module="com.h2database.h2">
                    <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
                </driver>
                <driver name="mysql" module="com.mysql">
                    <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
                </driver>
            </drivers>
        </datasources>
</subsystem> 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37762903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档