Java 无法将mysql驱动程序添加到jboss

Java 无法将mysql驱动程序添加到jboss,java,mysql,jboss7.x,Java,Mysql,Jboss7.x,好吧,这让我发疯了。特别是因为已经有很多类似的问题了。但没有一个答案适合我 我在我的Windows7机器上有JBoss7.1.1,在eclipse上正常运行,我想使用mysql 我做了以下工作: 1已创建目录jboss-as-7.1.1.Final\modules\com\mysql\main 有2个文件:module.xml和mysql-connector-java-5.1.26-bin.jar,从mysql官方网站下载 3 module.xml的内容: 以及: 每次启动jboss服务器时,我

好吧,这让我发疯了。特别是因为已经有很多类似的问题了。但没有一个答案适合我

我在我的Windows7机器上有JBoss7.1.1,在eclipse上正常运行,我想使用mysql

我做了以下工作:

1已创建目录jboss-as-7.1.1.Final\modules\com\mysql\main

有2个文件:module.xml和mysql-connector-java-5.1.26-bin.jar,从mysql官方网站下载

3 module.xml的内容:

以及:

每次启动jboss服务器时,我都会看到以下消息:

service jboss.jdbc-driver.com_mysql缺少依赖项:[service jboss.data source.java:jboss/datasources/mysqlDS]

当我转到管理控制台查看数据源时,mysqlDS列在那里,但当我单击它时,我得到一个错误,抱歉,无法选择那里的文本,因此出现了图像:


要使JDBC驱动程序类可用于JBoss应用程序服务器,请将存档mysql-mysql-connector-java-5.1.5-bin.jar从connector/J发行版复制到默认服务器配置中的lib目录(假设您正在运行的服务器配置)

现在创建一个mysql-ds.xml

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
<local-tx-datasource>
  <jndi-name>DefaultDS</jndi-name>
  <connection-url>jdbc:mysql://localhost:3306/test</connection-url>
  <driver-class>com.mysql.jdbc.Driver</driver-class>
  <user-name>root</user-name>
  <password>jboss</password>
  <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name>
  <metadata>
<type-mapping>mySQL</type-mapping>
</metadata>
</local-tx-datasource>
</datasources>
您也可以参考此链接


您需要给驱动程序标记一个驱动程序类或数据源

com.mysql.jdbc.jdbc2.optional.MysqlXADataSource
所以我可以再一次向我的愚蠢致敬。 除了module.xml文件中有打字错误外,我做的一切都是对的。 请注意,在上面的代码中,一些单词之间没有空格——不知怎的,它们丢失了。 但更糟糕的是,这些模块文件显然没有经过jboss的验证,这就是为什么我从未意识到这一点。不管怎样,这是正确的配置,没有输入错误

<?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.26-bin.jar"/>              
  </resources>
  <dependencies>
     <module name="javax.api"/>
  </dependencies>
</module>

这是我的示例module.xml

<module xmlns="urn:jboss:module:1.1" name="com.mysql">

<resources>
    <resource-root path="mysql-connector-java-5.1.6.jar"/>
    <!-- Insert resources here -->
</resources>
<dependencies>
          <module name="javax.api"/>
          <module name="javax.transaction.api"/>
</dependencies>
下面是standalone.xml中的数据源配置

<datasource jta="true" jndi-name="java:jboss/jdbc/MyDS" pool-name="AppzillonDS"         enabled="true" use-java-context="true">
  <connection-url>jdbc:mysql://192.168.1.98:3306/mydb?zeroDateTimeBehavior=convertToNull</connection-url>
  <driver>mysql</driver>
    <security>
       <user-name>user</user-name>
       <password>password</password>
    </security>
</datasource>
请看上面的驾驶员标签。驱动器只是mysql,而不是com.mysql。
希望这能帮助您……

确保module.xml文件开头没有空格,否则您将得到:

new missing/unsatisfied dependencies

…此驱动程序出错。

使用mysql 5.7的WILDFLY 10

按照以下步骤操作:在standalone.xml中注释或删除示例

<datasource jta="true" jndi-name="java:jboss/jdbc/MyDS" pool-name="AppzillonDS"         enabled="true" use-java-context="true">
  <connection-url>jdbc:mysql://192.168.1.98:3306/mydb?zeroDateTimeBehavior=convertToNull</connection-url>
  <driver>mysql</driver>
    <security>
       <user-name>user</user-name>
       <password>password</password>
    </security>
</datasource>
进入 jboss-cli.bat-连接 执行命令后 [standalone@localhost:9990/]/subsystem=datasources/jdbc driver=mysql:adddriver name=mysql,driver module name=com.mysql,driver xa datasource class name=com.mysql.jdbc.jdbc2.optional.MysqlXADataSource

应该可以

修改standalone.xml,然后添加

<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;DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>h2</driver>
<security>
    <user-name>sa</user-name>
    <password>sa</password>
</security>
</datasource> -->
<datasource jndi-name="java:/mysql" pool-name="mysqlDS" enabled="true" use-java-context="true">
<connection-url>jdbc:mysql://localhost:3306/wildfly</connection-url>
<driver>mysql</driver>
<security>
    <user-name>root</user-name>
    <password>jdfoxito10</password>
</security>
</datasource>
<drivers>
<driver name="mysql" module="com.mysql">
<xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
</driver>
</drivers>
</datasources>
应该看起来像

并放入module.xml

\java\server\wildfly-10.1.0.Final\modules\system\layers\base\com\mysql\main

mysql-connector-java-5.1.40-bin.jar安装程序mysql-installer-community-5.7.15.0.msi module.xml

<module xmlns="urn:jboss:module:1.1" name="com.mysql">

<resources>
    <resource-root path="mysql-connector-java-5.1.6.jar"/>
    <!-- Insert resources here -->
</resources>
<dependencies>
          <module name="javax.api"/>
          <module name="javax.transaction.api"/>
</dependencies>
以及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.40-bin.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
</module>

准备好了,JAVA_HOME应该没问题

hmm这不管用。此外,我根据您的第一个链接进行了所有签名,这与解决方案无关?您还使用了带有X的ResourceXces,而不是ResourcesName。我遇到了一些事情。我的XML无效。如果Jboss先生先抛出NoWayImParsingYouInvalidCrapXMLException,而不仅仅是抱歉,那就太好了。。我不能装你的东西.```?这是对的吗?不,不是,这就是它不起作用的原因;看见
<?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.40-bin.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
</module>