在jboss独立模式下设置数据源

时间:2012-10-01 12:49:40

标签: java jboss

我想在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"
}

我没有添加任何东西到驱动程序部分,因为它不是nessaccary,

下面的一个设置为jboss

中设置的样本数据源
<drivers>
      <driver name="h2" module="com.h2database.h2">
      <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class
      </driver>
</drivers>

我在这里想念的是什么?

2 个答案:

答案 0 :(得分:1)

您还需要指定驱动程序类

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

结帐此链接How do I migrate my application from AS5 or AS6 to AS7

答案 1 :(得分:1)

我在同样的情况下遇到过同样的问题。问题是我的AS没有PostgreSQL所需的模块。如果您有一个名为jboss/modules/org的文件夹,请检入postgresql。如果没有,那么创建它。然后在其中创建一个名为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