2012-10-01 30 views
2

我想在jboss獨立模式下設置mysql數據源。我已經部署使用mysql-connector-java的5.1.15-bin.jar,並設置以下數據源配置在standalone.xml下的數據源在jboss獨立模式下設置數據源

<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> 

我在這裏錯過了什麼?

回答

1

您還需要指定驅動程序類

​​

結帳這個鏈接How do I migrate my application from AS5 or AS6 to AS7

+0

我已經試過這個。但仍然錯誤未知知道 – FrankD

+0

我是否需要在standalone.xml中的驅動程序標記下爲mysql還有一個xa-datasource類?在他們爲com.h2database.h2設置的示例數據源中設置了它,但我們是否也需要它在mysql中 – FrankD

1

我已經經歷了相同的情況下相同的問題。問題是我的AS沒有PostgreSQL所需的模塊。如果您有一個名爲postgresql的文件夾,請檢查jboss/modules/org。如果沒有,然後創建它。然後在其中創建一個名爲main的目錄。 你就必須有兩個文件出現在那裏:

  • module.xml配置文件

  • 下載JAR文件,根據你的數據庫

    • PostgreSQL的JDBC 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驅動程序丟失,它也不會警告您。我浪費了大量的時間找到這個隱藏的bug:D