"java.lang.LinkageError: Failed to link oracle/xdb/XMLTypeFactory" in EAP 6
Issue
- Copied the Oracle driver (ojdbc6.jar) to
<JBOSS_HOME>/<profile>/deployments - Configured a datasource to point to the deployed driver jar
- Encountering
LinkageErrorwhen accessing an XML Object loaded from the Oracle database
java.lang.LinkageError: Failed to link oracle/xdb/XMLTypeFactory (Module "component-service.ear:main" from Service Module Loader)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:487)
at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:277)
at org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:92)
at org.jboss.modules.Module.loadModuleClass(Module.java:568)
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:205)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at oracle.jdbc.driver.ClassRef.get(ClassRef.java:92)
at oracle.jdbc.driver.OracleConnection.getClassForType(OracleConnection.java:465)
at oracle.sql.OpaqueDescriptor.getClass(OpaqueDescriptor.java:473)
at oracle.sql.OPAQUE.toJdbc(OPAQUE.java:330)
at oracle.jdbc.driver.NamedTypeAccessor.getObject(NamedTypeAccessor.java:193)
at oracle.jdbc.driver.NamedTypeAccessor.getObject(NamedTypeAccessor.java:123)
at oracle.jdbc.driver.OracleResultSetImpl.getObject(OracleResultSetImpl.java:1108)
at oracle.jdbc.driver.OracleResultSet.getObject(OracleResultSet.java:462)
at org.jboss.jca.adapters.jdbc.WrappedResultSet.getObject(WrappedResultSet.java:1199)
...
Caused by: java.lang.NoClassDefFoundError: oracle/sql/ORADataFactory
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482)
...
Caused by: java.lang.ClassNotFoundException: oracle.sql.ORADataFactory from [Module "compnent-service.ear:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134)
...
Environment
- Red Hat JBoss Enterprise Application Platform (EAP) 6
- Oracle
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.