簡體   English   中英

WildFly 8.1.0.Final上Firebird數據源的“無法加載模塊”錯誤

[英]“Failed to load module” error for Firebird datasource on WildFly 8.1.0.Final

服務器啟動錯誤消息是:

16:08:37,829 ERROR [org.jboss.as.controller.management-operation] (ServerService
 Thread Pool -- 27) JBAS014613: Operation ("add") failed - address: ([
    ("subsystem" => "datasources"),
    ("jdbc-driver" => "firebird")
]) - failure description: "JBAS010441: Failed to load module for driver [org.fir
ebirdsql]"

module.xml的內容:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.3" name="org.firebirdsql">
  <resources>
    <resource-root path="jaybird-2.2.5.jar"/>
  </resources>
  <dependencies>
    <module name="javax.api"/>
    <module name="javax.resource"/>
    <module name="javax.transaction.api"/>
  </dependencies>
</module>

standalone.xml中的驅動程序定義:

<driver name="firebird" module="org.firebirdsql">
  <driver-class>org.firebirdsql.jdbc.FBDriver</driver-class>
</driver>

(基於http://masterjboss.blogspot.de/2014/03/how-to-configure-mysql-jdbc-driver-in.html

一個類似的問題(沒有接受答案): 在wildfly上設置Db2驅動程序/數據源:無法加載驅動程序模塊[com.ibm]

在依賴項部分中將<module name="javax.resource"/>替換為<module name="javax.resource.api"/>

我安裝了WildFly 8.1並添加了以下模塊:

<wildfly-root>\modules\org\firebirdsql\main\
                                            module.xml
                                            jaybird-2.2.5.jar

請注意,這與您鏈接到的教程中使用的位置不匹配。 教程 - 錯誤地 - 將用戶模塊設置在modules\\system\\layers\\base而不是modules\\ ,但是當我將模塊放在那里時它也可以工作。

我的module.xml定義有內容:

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.0" name="org.firebirdsql">
  <resources>
    <resource-root path="jaybird-2.2.5.jar"/>
  </resources>
  <dependencies>
    <module name="javax.api"/>
    <module name="javax.transaction.api"/>
    <module name="javax.resource.api"/>
  </dependencies>
</module>

我完全按照您發布的方式將驅動程序條目添加到standalone.xml 然后在管理控制台中添加了一個數據源,並測試了連接。

這有效。 我在評論中的早期理論認為,由於Web Profile不包括資源連接器,它不適合您,這似乎是錯誤的。 當WildFly在Java 7上運行時,我還使用Java 8版本的Jaybird進行了測試,但這會產生預期的UnsupportedClassVersionError

我能夠在您的問題中得到錯誤的唯一方法是故意錯放模塊(例如,完全刪除它,在文件夾名稱中出現拼寫錯誤,或將其放在錯誤的位置)。 我建議你仔細檢查你的模塊位置(見上文)。


請參閱asohun的答案,以解決您的具體問題。 我將保留這個答案,因為它包含正確的配置和產生相同錯誤的替代故障模式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM