Uploaded image for project: 'jBPM'
  1. jBPM
  2. JBPM-8922

RemoteBusinessRuleTaskHandler does not work with https url

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not a Bug
    • Icon: Major Major
    • None
    • 7.26.0.Final
    • Remote Services
    • NEW
    • NEW
    • Hide

      According to the following blog,

      http://mswiderski.blogspot.com/2017/04/control-business-rules-execution-from.html

      configure RemoteBusinessRule Task and set https url in kie-deployment-descriptor.xml like the following.

               <work-item-handler>
                   <resolver>mvel</resolver>
                  <identifier>new org.kie.server.client.integration.RemoteBusinessRuleTaskHandler("https://localhost:8443/kie-server/services/rest/server", "rhpamAdmin", "Password1!", classLoader)</identifier>
                   <parameters/>
                   <name>SecureRemoteBusinessRuleTask</name>
               </work-item-handler>
      
      Show
      According to the following blog, http://mswiderski.blogspot.com/2017/04/control-business-rules-execution-from.html configure RemoteBusinessRule Task and set https url in kie-deployment-descriptor.xml like the following. <work-item-handler> <resolver>mvel</resolver> <identifier>new org.kie.server.client.integration.RemoteBusinessRuleTaskHandler("https://localhost:8443/kie-server/services/rest/server", "rhpamAdmin", "Password1!", classLoader)</identifier> <parameters/> <name>SecureRemoteBusinessRuleTask</name> </work-item-handler>

      If url with https is passed to Remote Business Rule Task, internal KieServiceClient fails to instanciate.

      12:04:43,847 ERROR [org.kie.server.services.jbpm.JbpmKieServerExtension] (default task-59) Error when creating container remoteRuleTaskTest_2.0.0 by extension jBPM KIE Server extension: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: Exception while initializing runtime manager remoteRuleTaskTest_2.0.0
      	at org.jbpm.kie.services.impl.KModuleDeploymentService.deploy(KModuleDeploymentService.java:208)
      	at org.kie.server.services.jbpm.JbpmKieServerExtension.createContainer(JbpmKieServerExtension.java:416)
      	at org.kie.server.services.impl.KieServerImpl.createContainer(KieServerImpl.java:248)
      	at org.kie.server.remote.rest.common.resource.KieServerRestImpl.createContainer(KieServerRestImpl.java:138)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:140)
      	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:295)
      	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:249)
      	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:236)
      	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:406)
      	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:213)
      	at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:228)
      	at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56)
      	at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
      	at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
      	at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
      	at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:64)
      	at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
      	at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
      	at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
      	at io.undertow.server.handlers.DisableCacheHandler.handleRequest(DisableCacheHandler.java:33)
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:53)
      	at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
      	at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
      	at io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:59)
      	at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
      	at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
      	at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
      	at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at org.wildfly.extension.undertow.deployment.GlobalRequestControllerHandler.handleRequest(GlobalRequestControllerHandler.java:68)
      	at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
      	at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292)
      	at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81)
      	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138)
      	at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
      	at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
      	at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
      	at org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java:105)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1501)
      	at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272)
      	at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81)
      	at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104)
      	at io.undertow.server.Connectors.executeRootHandler(Connectors.java:330)
      	at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:812)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at java.lang.Thread.run(Thread.java:748)
      Caused by: java.lang.RuntimeException: java.lang.RuntimeException: Exception while initializing runtime manager remoteRuleTaskTest_2.0.0
      	at org.jbpm.kie.services.impl.AbstractDeploymentService.commonDeploy(AbstractDeploymentService.java:171)
      	at org.jbpm.kie.services.impl.KModuleDeploymentService.deploy(KModuleDeploymentService.java:203)
      	... 59 more
      Caused by: java.lang.RuntimeException: Exception while initializing runtime manager remoteRuleTaskTest_2.0.0
      	at org.jbpm.runtime.manager.impl.SingletonRuntimeManager.init(SingletonRuntimeManager.java:126)
      	at org.jbpm.runtime.manager.impl.RuntimeManagerFactoryImpl.newSingletonRuntimeManager(RuntimeManagerFactoryImpl.java:64)
      	at org.jbpm.kie.services.impl.AbstractDeploymentService.commonDeploy(AbstractDeploymentService.java:136)
      	... 60 more
      Caused by: [Error: could not create constructor: null]
      [Near : {... new org.kie.server.client.integrat ....}]
                       ^
      [Line: 1, Column: 5]
      	at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeObjectCreation(ReflectiveAccessorOptimizer.java:1244)
      	at org.mvel2.ast.NewObjectNode.getReducedValueAccelerated(NewObjectNode.java:218)
      	at org.mvel2.compiler.ExecutableAccessor.getValue(ExecutableAccessor.java:42)
      	at org.mvel2.MVEL.executeExpression(MVEL.java:968)
      	at org.kie.soup.project.datamodel.commons.util.RawMVELEvaluator.executeExpression(RawMVELEvaluator.java:118)
      	at org.jbpm.runtime.manager.impl.deploy.MVELObjectModelResolver.getInstance(MVELObjectModelResolver.java:59)
      	at org.jbpm.runtime.manager.impl.DefaultRegisterableItemsFactory.getInstanceFromModel(DefaultRegisterableItemsFactory.java:220)
      	at org.jbpm.runtime.manager.impl.DefaultRegisterableItemsFactory.getWorkItemHandlersFromDescriptor(DefaultRegisterableItemsFactory.java:267)
      	at org.jbpm.runtime.manager.impl.DefaultRegisterableItemsFactory.getWorkItemHandlers(DefaultRegisterableItemsFactory.java:86)
      	at org.jbpm.runtime.manager.impl.KModuleRegisterableItemsFactory.getWorkItemHandlers(KModuleRegisterableItemsFactory.java:98)
      	at org.jbpm.runtime.manager.impl.AbstractRuntimeManager.registerItems(AbstractRuntimeManager.java:146)
      	at org.jbpm.runtime.manager.impl.SingletonRuntimeManager.init(SingletonRuntimeManager.java:116)
      	... 62 more
      Caused by: java.lang.reflect.InvocationTargetException
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
      	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
      	at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileConstructor(ReflectiveAccessorOptimizer.java:1307)
      	at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeObjectCreation(ReflectiveAccessorOptimizer.java:1235)
      	... 73 more
      Caused by: org.kie.server.common.rest.NoEndpointFoundException: No available endpoints found
      	at org.kie.server.client.balancer.impl.AbstractBalancerStrategy.checkEmpty(AbstractBalancerStrategy.java:27)
      	at org.kie.server.client.balancer.impl.RoundRobinBalancerStrategy.next(RoundRobinBalancerStrategy.java:37)
      	at org.kie.server.client.balancer.LoadBalancer.getUrl(LoadBalancer.java:52)
      	at org.kie.server.client.impl.AbstractKieServicesClientImpl.invoke(AbstractKieServicesClientImpl.java:809)
      	at org.kie.server.client.impl.AbstractKieServicesClientImpl.makeHttpGetRequestAndCreateServiceResponse(AbstractKieServicesClientImpl.java:177)
      	at org.kie.server.client.impl.KieServicesClientImpl.getServerInfo(KieServicesClientImpl.java:157)
      	at org.kie.server.client.impl.KieServicesClientImpl.getCapabilitiesFromServer(KieServicesClientImpl.java:130)
      	at org.kie.server.client.impl.KieServicesClientImpl.init(KieServicesClientImpl.java:85)
      	at org.kie.server.client.impl.KieServicesClientImpl.<init>(KieServicesClientImpl.java:77)
      	at org.kie.server.client.KieServicesFactory.newKieServicesClient(KieServicesFactory.java:105)
      	at org.kie.server.client.integration.RemoteBusinessRuleTaskHandler.<init>(RemoteBusinessRuleTaskHandler.java:88)
      	... 79 more
      

              elguardian@gmail.com Enrique González Martínez (Inactive)
              rhn-support-hmiura Hiroko Miura
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: