Changes for Java9 causes issues for the RHDG modules added to EAP
Issue
- If my legacy application (which uses the HotRod remote modules for EAP) is deployed on EAP 7.2 the deployment failed with the following Exception
WARN [org.jboss.modules.define] (MSC service thread 1-3) Failed to define class org.infinispan.client.hotrod.configuration.ConfigurationBuilder in Module "org.infinispan.client.hotrod:jdg-7.2" version 8.5.0.Final-redhat-9 from local module loader @79b4d0f (finder: local module finder @6b2fad11 (roots: /srv/eap/7.2.0/jdgModuleTest/modules,/srv/eap/7.2.0/jdgModuleTest/modules/system/layers/base)): org.jboss.modules.ModuleLoadError: org.apache.commons.pool
at org.jboss.modules.ModuleLoadException.toError(ModuleLoadException.java:74)
...
ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.deployment.unit."HotRodClientWebApp-war.war".POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."HotRodClientWebApp-war.war".POST_MODULE: WFLYSRV0153: Failed to process phase POST_MODULE of deployment "HotRodClientWebApp-war.war"
...
Caused by: org.jboss.modules.ModuleLoadError: org.apache.commons.pool
...
- If RHDG modules with version 7.3.0 are used for applications deployed at legacy EAP servers (<EAP 7.2) the application will fail at runtime with errors like followed
Caused by: org.jboss.modules.ModuleLoadError: jdk.unsupported
at org.jboss.modules.ModuleLoadException.toError(ModuleLoadException.java:74)
at org.jboss.modules.Module.getPathsUnchecked(Module.java:1560)
at org.jboss.modules.Module.loadModuleClass(Module.java:709)
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:412)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:400)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:358)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:437)
at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:274)
at org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:77)
at org.jboss.modules.Module.loadModuleClass(Module.java:714)
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:412)
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:400)
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3167)
at java.base/java.lang.Class.privateGetPublicMethods(Class.java:3192)
at java.base/java.lang.Class.getMethods(Class.java:1905)
at org.infinispan.commons:jdg-7.3//org.infinispan.commons.util.Util.getFactoryMethod(Util.java:212)
at org.infinispan.commons:jdg-7.3//org.infinispan.commons.util.Util.getInstanceStrict(Util.java:249)
at org.infinispan.commons:jdg-7.3//org.infinispan.commons.util.Util.getInstance(Util.java:230)
at org.infinispan.client.hotrod:jdg-7.3//org.infinispan.client.hotrod.RemoteCacheManager.start(RemoteCacheManager.java:282)
at org.infinispan.client.hotrod:jdg-7.3//org.infinispan.client.hotrod.RemoteCacheManager.<init>(RemoteCacheManager.java:134)
at org.infinispan.client.hotrod:jdg-7.3//org.infinispan.client.hotrod.RemoteCacheManager.<init>(RemoteCacheManager.java:117)
at deployment.HotRodClientWebApp-war.war//org.infinispan.wfink.web.RemoteCacheManagerProvider.getCacheManager(RemoteCacheManagerProvider.java:50)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.jboss.weld.core//org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:88)
... 106 more
Environment
- Red Hat Data Grid (RHDG)
- 7
- Red Hat JBoss Enterprise Application Platform (EAP)
- 7
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.