Uploaded image for project: 'Red Hat Process Automation Manager'
  1. Red Hat Process Automation Manager
  2. RHPAM-3128

Unable to deploy KIE Server with Fuse on EAP

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Blocker
    • 7.8.1.GA
    • 7.8.1.GA
    • Fuse Integration
    • None
    • Documentation (Ref Guide, User Guide, etc.), Release Notes
    • CR2
    • Hide
      3.1. Fuse integration

      Red Hat Fuse 7.7 is supported on Red Hat JBoss EAP 7.2, whereas Red Hat Process Automation Manager 7.8.x and newer is supported on Red Hat JBoss EAP 7.3. To ensure a stable deployment environment, install Fuse and Red Hat Process Automation Manager on different instances of Red Hat JBoss EAP according to the supported Red Hat JBoss EAP versions. Red Hat Process Automation Manager 7.8.x and newer components on Red Hat JBoss EAP 7.2 are not officially supported but Red Hat provides guidance on a commercially reasonable basis until Red Hat Fuse will be available on Red Hat JBoss EAP 7.3. Also in the Fuse integration using kie-camel on Red Hat JBoss EAP 7.2, MarshallingFormat.JSON is not supported (default is JAXB).
      Show
      3.1. Fuse integration Red Hat Fuse 7.7 is supported on Red Hat JBoss EAP 7.2, whereas Red Hat Process Automation Manager 7.8.x and newer is supported on Red Hat JBoss EAP 7.3. To ensure a stable deployment environment, install Fuse and Red Hat Process Automation Manager on different instances of Red Hat JBoss EAP according to the supported Red Hat JBoss EAP versions. Red Hat Process Automation Manager 7.8.x and newer components on Red Hat JBoss EAP 7.2 are not officially supported but Red Hat provides guidance on a commercially reasonable basis until Red Hat Fuse will be available on Red Hat JBoss EAP 7.3. Also in the Fuse integration using kie-camel on Red Hat JBoss EAP 7.2, MarshallingFormat.JSON is not supported (default is JAXB).
    • 2020 Week 34-36 (from Aug 17)

    Description

      When our Fuse on EAP with KIE Server integration test suite is being deployed, the deployment of KIE Server fails with:

      [INFO] [talledLocalContainer] 06:20:02,448 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 81) MSC000001: Failed to start service jboss.deployment.unit."kie-server-services.war".undertow-deployment: org.jboss.msc.service.StartException in service jboss.deployment.unit."kie-server-services.war".undertow-deployment: java.lang.VerifyError: Failed to link org/kie/server/api/marshalling/json/FallbackableTypeFactory (Module "deployment.kie-server-services.war" from Service Module Loader): Cannot inherit from final class
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:81)
      [INFO] [talledLocalContainer] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      [INFO] [talledLocalContainer] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      [INFO] [talledLocalContainer] 	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
      [INFO] [talledLocalContainer] 	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985)
      [INFO] [talledLocalContainer] 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1487)
      [INFO] [talledLocalContainer] 	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378)
      [INFO] [talledLocalContainer] 	at java.lang.Thread.run(Thread.java:748)
      [INFO] [talledLocalContainer] 	at org.jboss.threads.JBossThread.run(JBossThread.java:485)
      [INFO] [talledLocalContainer] Caused by: java.lang.VerifyError: Failed to link org/kie/server/api/marshalling/json/FallbackableTypeFactory (Module "deployment.kie-server-services.war" from Service Module Loader): Cannot inherit from final class
      [INFO] [talledLocalContainer] 	at java.lang.ClassLoader.defineClass1(Native Method)
      [INFO] [talledLocalContainer] 	at java.lang.ClassLoader.defineClass(ClassLoader.java:757)
      [INFO] [talledLocalContainer] 	at java.lang.ClassLoader.defineClass(ClassLoader.java:833)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:424)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:519)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:339)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:126)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.Module.loadModuleClass(Module.java:731)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:247)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:410)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)
      [INFO] [talledLocalContainer] 	at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:116)
      [INFO] [talledLocalContainer] 	at org.kie.server.api.marshalling.BaseMarshallerBuilder.build(BaseMarshallerBuilder.java:45)
      [INFO] [talledLocalContainer] 	at org.kie.server.api.marshalling.MarshallerFactory.getMarshaller(MarshallerFactory.java:50)
      [INFO] [talledLocalContainer] 	at org.kie.server.api.marshalling.MarshallerFactory.getMarshaller(MarshallerFactory.java:39)
      [INFO] [talledLocalContainer] 	at org.kie.server.services.jbpm.JbpmKieServerExtension.registerDefaultQueryDefinitions(JbpmKieServerExtension.java:836)
      [INFO] [talledLocalContainer] 	at org.kie.server.services.jbpm.JbpmKieServerExtension.init(JbpmKieServerExtension.java:213)
      [INFO] [talledLocalContainer] 	at org.kie.server.services.impl.KieServerImpl.init(KieServerImpl.java:165)
      [INFO] [talledLocalContainer] 	at org.kie.server.services.impl.KieServerLocator$KieServerLocatorHelper.<clinit>(KieServerLocator.java:25)
      [INFO] [talledLocalContainer] 	at org.kie.server.services.impl.KieServerLocator.getInstance(KieServerLocator.java:32)
      [INFO] [talledLocalContainer] 	at org.kie.server.remote.rest.common.Bootstrap.contextInitialized(Bootstrap.java:51)
      [INFO] [talledLocalContainer] 	at io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:187)
      [INFO] [talledLocalContainer] 	at io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:217)
      [INFO] [talledLocalContainer] 	at io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:186)
      [INFO] [talledLocalContainer] 	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:42)
      [INFO] [talledLocalContainer] 	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105)
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1504)
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1504)
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1504)
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1504)
      [INFO] [talledLocalContainer] 	at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:252)
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:96)
      [INFO] [talledLocalContainer] 	at org.wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:78)
      [INFO] [talledLocalContainer] 	... 8 more
      

      The root cause is that the newly added class FallbackableTypeFactory extends TypeFactory class coming from jackson-databind dependency and this class is marked as final in jackson-databind 2.9.9.3 which is used by EAP 7.2.5. In the standalone KIE Server tests scenario, where we use EAP 7.3.1, there is already jackson-databind 2.10.3 where this class is non-final (final keyword was removed with the version 2.10), so the FallbackableTypeFactory works there. Therefore, we either need to use a newer EAP for integration of KIE Server with Fuse on EAP or we find a replacement for the code which is currently provided by the FallbackableTypeFactory.

      Attachments

        Issue Links

          Activity

            People

              rhn-support-tkobayas Toshiya Kobayashi
              mmacik@redhat.com Marian Macik
              Jiri Petrlik Jiri Petrlik
              Jiri Petrlik Jiri Petrlik
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: