【问题标题】:set a data source in jboss standalone mode在 jboss 独立模式下设置数据源
【发布时间】:2012-09-22 07:43:49
【问题描述】:

我想在 jboss 独立模式下设置一个 mysql 数据源。我已经部署了mysql-connector-java-5.1.15-bin.jar,并在datasources下的standalone.xml中设置了以下数据源配置

<datasource jndi-name="java:jboss/datasources/MySqlDS" pool-name="MySqlDS" enabled="true" use-java-context="true">
        <connection-url>jdbc:mysql://localhost:3306/testdb</connection-url>
        <driver>mysql</driver>
        <security>
        <user-name>root</user-name>
        </security>
</datasource>

当我在 Web 控制台中单击配置的数据源名称时,我得到以下错误,

Internal server error{
"outcome" => "failed",
"failure-description" => "JBAS014739: No handler for read resource at address [
(\"subsystem\"=>"\datasource\"),
(\"data-source\"=>"\MySqlDS\"),
(\"statstics\"=>"\pool\"),
"],
"roleback" => "true"
}

我没有在驱动部分添加任何东西,因为它不是必需的,

下面一个设置为jboss中设置的示例数据源

<drivers>
      <driver name="h2" module="com.h2database.h2">
      <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class
      </driver>
</drivers>

请问我在这里缺少什么?

【问题讨论】:

    标签: java jboss


    【解决方案1】:

    您还需要指定驱动程序类

     <driver-class>com.mysql.jdbc.Driver</driver-class>
    

    查看此链接How do I migrate my application from AS5 or AS6 to AS7

    【讨论】:

    • 我是否还需要在standalone.xml 中的驱动程序标签下为mysql 设置一个xa-datasource-class?在他们为 com.h2database.h2 设置的示例数据源中,它已经设置但我们在 mysql 中也需要它
    【解决方案2】:

    我在同样的情况下也遇到过同样的问题。问题是我的 AS 没有 PostgreSQL 所需的模块。如果您有一个名为 postgresql 的文件夹,请签入 jboss/modules/org。如果没有,则创建它。然后在其中创建一个名为main 的目录。 然后,您必须在其中有两个文件:

    • PostgreSQL JDBC JAR

    • module.xml配置文件

    根据您使用的数据库下载 JAR 文件并将其复制到此处。至于module.xml,只需创建一个新文件并设置配置即可。我的看起来像这样,根据你的情况定制它:

    <?xml version="1.0" encoding="UTF-8"?>
    <module xmlns="urn:jboss:module:1.1" name="org.postgresql">
    <resources>
        <resource-root path="postgresql-9.3-1100.jdbc4.jar"/>
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
    </dependencies>
    </module>
    

    基本上你只需要将资源路径更改为你的 JAR 文件所在的位置。

    这是 JBOSS 的问题,即使缺少 JDBC 驱动程序,它也不会警告您。我浪费了大量时间来寻找这个隐藏的错误:D

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-02
      • 2014-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-22
      相关资源
      最近更新 更多