简体   繁体   English

WildFly 8.1.0.Final上Firebird数据源的“无法加载模块”错误

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

The server startup error message is: 服务器启动错误消息是:

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

Content of module.xml : 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>

Driver definition in standalone.xml : standalone.xml中的驱动程序定义:

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

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

A similar problem (without accepted answer): Db2 Driver/Datasource setup on wildfly: Failed to load module for driver [com.ibm] 一个类似的问题(没有接受答案): 在wildfly上设置Db2驱动程序/数据源:无法加载驱动程序模块[com.ibm]

在依赖项部分中将<module name="javax.resource"/>替换为<module name="javax.resource.api"/>

I have installed WildFly 8.1 and added the module under: 我安装了WildFly 8.1并添加了以下模块:

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

Note that this doesn't match the location used in the tutorial you link to. 请注意,这与您链接到的教程中使用的位置不匹配。 The tutorial - incorrectly - roots user modules in modules\\system\\layers\\base instead of modules\\ , but when I place the module there it works as well. 教程 - 错误地 - 将用户模块设置在modules\\system\\layers\\base而不是modules\\ ,但是当我将模块放在那里时它也可以工作。

My module.xml definition has content: 我的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>

I added the driver entry to standalone.xml exactly as you posted. 我完全按照您发布的方式将驱动程序条目添加到standalone.xml And then added a datasource in the management console, and tested the connection. 然后在管理控制台中添加了一个数据源,并测试了连接。

This works. 这有效。 My earlier theory in the comments that it isn't working for you due to the Web Profile not including Resource Connectors seems to be wrong. 我在评论中的早期理论认为,由于Web Profile不包括资源连接器,它不适合您,这似乎是错误的。 I have also tested using a Java 8 version of Jaybird when WildFly is running on Java 7, but this gives an UnsupportedClassVersionError as expected. 当WildFly在Java 7上运行时,我还使用Java 8版本的Jaybird进行了测试,但这会产生预期的UnsupportedClassVersionError

The only way I have been able get the error in your question is to intentionally misplace the module (eg deleting it entirely, having a spelling error in the folder names, or putting it in the wrong location). 我能够在您的问题中得到错误的唯一方法是故意错放模块(例如,完全删除它,在文件夹名称中出现拼写错误,或将其放在错误的位置)。 I would suggest that you carefully check your module location (see above). 我建议你仔细检查你的模块位置(见上文)。


See the answer by asohun for the solution to your specific problem. 请参阅asohun的答案,以解决您的具体问题。 I will leave this answer in place as it contains the correct config and an alternative failure mode that produces the same error. 我将保留这个答案,因为它包含正确的配置和产生相同错误的替代故障模式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 WildFly迁移,ejb问题(8.1.0.Final到9.0.1.Final) - WildFly migration, ejb issues (8.1.0.Final to 9.0.1.Final) javax.ws.rs.NotFoundException:无法使用 RESTEasy 和 Wildfly 8.1.0.Final 找到完整路径的资源 - javax.ws.rs.NotFoundException: Could not find resource for full path with RESTEasy and Wildfly 8.1.0.Final Wildfly 8.1.0 Final和Netbeans 8.0:WildFly Application Server启动失败。 HTTP连接器端口8080已在使用中 - Wildfly 8.1.0 Final and Netbeans 8.0: WildFly Application Server Start Failed. HTTP Connector port 8080 is already in use Wildfly 8.1.0 Final + Arquillian 1.1.5.Final = ArquillianServletRunner - 没有结果返回 - Wildfly 8.1.0 Final + Arquillian 1.1.5.Final = ArquillianServletRunner - No result returned 为什么在使用远程应用程序库部署ejb模块时,Wildfly 8.1.0最终返回java.lang.NoClassDefFoundError:,但是glassfish没有? - Why Wildfly 8.1.0 final return java.lang.NoClassDefFoundError: when deploying ejb module with a remote application library but glassfish doesn’t? 使用WildFly-8.1.0.Final不尊重属性dLQMaxResent - Property dLQMaxResent is not respected using WildFly-8.1.0.Final Wildfly 8.1.0进行EJB远程调用时出错 - Error in wildfly 8.1.0 making a EJB remote invocation 数据源中的Wildfly 12错误 - Wildfly 12 error in datasource Wildfly 8.1.0 Final / JASPIC:调用HttpServletRequest.authenticate()时未调用ServerAuthModule.validateRequest() - Wildfly 8.1.0 Final / JASPIC: ServerAuthModule.validateRequest() not being called when invoking HttpServletRequest.authenticate() 无法将多个War Package部署到侦听Wildfly 8.1.0 Final上不同端口的不同主机? - Not able to deploy multiple war packages to different hosts listening to different ports on Wildfly 8.1.0 Final?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM