Petals SE Flowable

Could not find importer for type http://schemas.xmlsoap.org/wsdl/

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.0.1
  • Fix Version/s: 1.1.0
  • Component/s: Flowable engine
  • Security Level: Public
  • Description:
    Hide

    On service task execution, we ca get the following error:

    cont-0 2018/02/06 11:36:20,514 GMT+0100 SEVERE [org.flowable.engine.common.impl.interceptor.AbstractCommandContext] : Error while closing command context
    org.flowable.engine.common.api.FlowableException: Could not find importer for type http://schemas.xmlsoap.org/wsdl/
    	at org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior.fillImporterInfo(WebServiceActivityBehavior.java:279)
    	at org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior.fillDefinitionMaps(WebServiceActivityBehavior.java:188)
    	at org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior.<init>(WebServiceActivityBehavior.java:82)
    	at org.flowable.engine.impl.bpmn.parser.factory.DefaultActivityBehaviorFactory.createWebServiceActivityBehavior(DefaultActivityBehaviorFactory.java:180)
    	at org.flowable.engine.impl.bpmn.parser.handler.ServiceTaskParseHandler.executeParse(ServiceTaskParseHandler.java:77)
    	at org.flowable.engine.impl.bpmn.parser.handler.ServiceTaskParseHandler.executeParse(ServiceTaskParseHandler.java:27)
    	at org.flowable.engine.impl.bpmn.parser.handler.AbstractBpmnParseHandler.parse(AbstractBpmnParseHandler.java:59)
    	at org.flowable.engine.impl.bpmn.parser.handler.AbstractActivityBpmnParseHandler.parse(AbstractActivityBpmnParseHandler.java:33)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParseHandlers.parseElement(BpmnParseHandlers.java:79)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParse.processFlowElements(BpmnParse.java:311)
    	at org.flowable.engine.impl.bpmn.parser.handler.ProcessParseHandler.transformProcess(ProcessParseHandler.java:74)
    	at org.flowable.engine.impl.bpmn.parser.handler.ProcessParseHandler.executeParse(ProcessParseHandler.java:47)
    	at org.flowable.engine.impl.bpmn.parser.handler.ProcessParseHandler.executeParse(ProcessParseHandler.java:33)
    	at org.flowable.engine.impl.bpmn.parser.handler.AbstractBpmnParseHandler.parse(AbstractBpmnParseHandler.java:59)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParseHandlers.parseElement(BpmnParseHandlers.java:79)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParse.applyParseHandlers(BpmnParse.java:282)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParse.execute(BpmnParse.java:195)
    	at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.createBpmnParseFromResource(ParsedDeploymentBuilder.java:94)
    	at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.build(ParsedDeploymentBuilder.java:53)
    	at org.flowable.engine.impl.bpmn.deployer.BpmnDeployer.deploy(BpmnDeployer.java:70)
    	at org.flowable.engine.impl.persistence.deploy.DeploymentManager.deploy(DeploymentManager.java:60)
    	at org.flowable.engine.impl.persistence.deploy.DeploymentManager.resolveProcessDefinition(DeploymentManager.java:128)
    	at org.flowable.engine.impl.persistence.deploy.DeploymentManager.findDeployedProcessDefinitionById(DeploymentManager.java:78)
    	at org.flowable.engine.impl.util.ProcessDefinitionUtil.getProcessDefinition(ProcessDefinitionUtil.java:49)
    	at org.flowable.engine.impl.util.ProcessDefinitionUtil.getProcessDefinition(ProcessDefinitionUtil.java:35)
    	at org.flowable.engine.impl.util.Flowable5Util.isFlowable5ProcessDefinitionId(Flowable5Util.java:41)
    	at org.flowable.engine.impl.util.Flowable5Util$1.execute(Flowable5Util.java:71)
    	at org.flowable.engine.impl.util.Flowable5Util$1.execute(Flowable5Util.java:67)
    	at org.flowable.engine.impl.interceptor.CommandInvoker$1.run(CommandInvoker.java:44)
    	at org.flowable.engine.impl.interceptor.CommandInvoker.executeOperation(CommandInvoker.java:86)
    	at org.flowable.engine.impl.interceptor.CommandInvoker.executeOperations(CommandInvoker.java:65)
    	at org.flowable.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:49)
    	at org.flowable.engine.impl.interceptor.TransactionContextInterceptor.execute(TransactionContextInterceptor.java:51)
    	at org.flowable.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:64)
    	at org.flowable.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:30)
    	at org.flowable.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:56)
    	at org.flowable.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:51)
    	at org.flowable.engine.impl.util.Flowable5Util.isFlowable5ProcessDefinitionId(Flowable5Util.java:67)
    	at org.flowable.engine.impl.asyncexecutor.ExecuteAsyncRunnable.isHandledByV5Engine(ExecuteAsyncRunnable.java:82)
    	at org.flowable.engine.impl.asyncexecutor.ExecuteAsyncRunnable.run(ExecuteAsyncRunnable.java:68)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622)
    	at java.lang.Thread.run(Thread.java:748)
    Show
    On service task execution, we ca get the following error:
    cont-0 2018/02/06 11:36:20,514 GMT+0100 SEVERE [org.flowable.engine.common.impl.interceptor.AbstractCommandContext] : Error while closing command context
    org.flowable.engine.common.api.FlowableException: Could not find importer for type http://schemas.xmlsoap.org/wsdl/
    	at org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior.fillImporterInfo(WebServiceActivityBehavior.java:279)
    	at org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior.fillDefinitionMaps(WebServiceActivityBehavior.java:188)
    	at org.flowable.engine.impl.bpmn.behavior.WebServiceActivityBehavior.<init>(WebServiceActivityBehavior.java:82)
    	at org.flowable.engine.impl.bpmn.parser.factory.DefaultActivityBehaviorFactory.createWebServiceActivityBehavior(DefaultActivityBehaviorFactory.java:180)
    	at org.flowable.engine.impl.bpmn.parser.handler.ServiceTaskParseHandler.executeParse(ServiceTaskParseHandler.java:77)
    	at org.flowable.engine.impl.bpmn.parser.handler.ServiceTaskParseHandler.executeParse(ServiceTaskParseHandler.java:27)
    	at org.flowable.engine.impl.bpmn.parser.handler.AbstractBpmnParseHandler.parse(AbstractBpmnParseHandler.java:59)
    	at org.flowable.engine.impl.bpmn.parser.handler.AbstractActivityBpmnParseHandler.parse(AbstractActivityBpmnParseHandler.java:33)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParseHandlers.parseElement(BpmnParseHandlers.java:79)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParse.processFlowElements(BpmnParse.java:311)
    	at org.flowable.engine.impl.bpmn.parser.handler.ProcessParseHandler.transformProcess(ProcessParseHandler.java:74)
    	at org.flowable.engine.impl.bpmn.parser.handler.ProcessParseHandler.executeParse(ProcessParseHandler.java:47)
    	at org.flowable.engine.impl.bpmn.parser.handler.ProcessParseHandler.executeParse(ProcessParseHandler.java:33)
    	at org.flowable.engine.impl.bpmn.parser.handler.AbstractBpmnParseHandler.parse(AbstractBpmnParseHandler.java:59)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParseHandlers.parseElement(BpmnParseHandlers.java:79)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParse.applyParseHandlers(BpmnParse.java:282)
    	at org.flowable.engine.impl.bpmn.parser.BpmnParse.execute(BpmnParse.java:195)
    	at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.createBpmnParseFromResource(ParsedDeploymentBuilder.java:94)
    	at org.flowable.engine.impl.bpmn.deployer.ParsedDeploymentBuilder.build(ParsedDeploymentBuilder.java:53)
    	at org.flowable.engine.impl.bpmn.deployer.BpmnDeployer.deploy(BpmnDeployer.java:70)
    	at org.flowable.engine.impl.persistence.deploy.DeploymentManager.deploy(DeploymentManager.java:60)
    	at org.flowable.engine.impl.persistence.deploy.DeploymentManager.resolveProcessDefinition(DeploymentManager.java:128)
    	at org.flowable.engine.impl.persistence.deploy.DeploymentManager.findDeployedProcessDefinitionById(DeploymentManager.java:78)
    	at org.flowable.engine.impl.util.ProcessDefinitionUtil.getProcessDefinition(ProcessDefinitionUtil.java:49)
    	at org.flowable.engine.impl.util.ProcessDefinitionUtil.getProcessDefinition(ProcessDefinitionUtil.java:35)
    	at org.flowable.engine.impl.util.Flowable5Util.isFlowable5ProcessDefinitionId(Flowable5Util.java:41)
    	at org.flowable.engine.impl.util.Flowable5Util$1.execute(Flowable5Util.java:71)
    	at org.flowable.engine.impl.util.Flowable5Util$1.execute(Flowable5Util.java:67)
    	at org.flowable.engine.impl.interceptor.CommandInvoker$1.run(CommandInvoker.java:44)
    	at org.flowable.engine.impl.interceptor.CommandInvoker.executeOperation(CommandInvoker.java:86)
    	at org.flowable.engine.impl.interceptor.CommandInvoker.executeOperations(CommandInvoker.java:65)
    	at org.flowable.engine.impl.interceptor.CommandInvoker.execute(CommandInvoker.java:49)
    	at org.flowable.engine.impl.interceptor.TransactionContextInterceptor.execute(TransactionContextInterceptor.java:51)
    	at org.flowable.engine.impl.interceptor.CommandContextInterceptor.execute(CommandContextInterceptor.java:64)
    	at org.flowable.engine.impl.interceptor.LogInterceptor.execute(LogInterceptor.java:30)
    	at org.flowable.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:56)
    	at org.flowable.engine.impl.cfg.CommandExecutorImpl.execute(CommandExecutorImpl.java:51)
    	at org.flowable.engine.impl.util.Flowable5Util.isFlowable5ProcessDefinitionId(Flowable5Util.java:67)
    	at org.flowable.engine.impl.asyncexecutor.ExecuteAsyncRunnable.isHandledByV5Engine(ExecuteAsyncRunnable.java:82)
    	at org.flowable.engine.impl.asyncexecutor.ExecuteAsyncRunnable.run(ExecuteAsyncRunnable.java:68)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622)
    	at java.lang.Thread.run(Thread.java:748)
  • Environment:
    -

Activity

Hide
Christophe DENEUX added a comment - Tue, 27 Feb 2018 - 18:57:01 +0100 - edited

This error occurs in the following use-case:

  1. deploy a Flowable SU,
  2. start a process instance
  3. redeploy the Flowable SU or restart Petals ESB container
  4. the error occurs when the process instance created previously try to execute a service task.

The problem is due to the URI resolver used by Flowable:

  • the BPMN definition is loaded from the absolute path of the BPMN file,
  • the WSDL files are resolved against the absolute path of BPMN file,
  • when redeploying the SU (or restarting Petals ESB container) the SU root directory is changed, and so we are no more able to resolve the WSDL files because the BPMN file no more exists on file system

The BPMN definition must be saved with the absolute path file. We will use the URI 'petals:<service-unit-name>:<bpmn-file>', but a Flowable contribution is needed to be able to configure the WSDL importer that will provide an URI resolver able to work with this URI.

Show
Christophe DENEUX added a comment - Tue, 27 Feb 2018 - 18:57:01 +0100 - edited This error occurs in the following use-case:
  1. deploy a Flowable SU,
  2. start a process instance
  3. redeploy the Flowable SU or restart Petals ESB container
  4. the error occurs when the process instance created previously try to execute a service task.
The problem is due to the URI resolver used by Flowable:
  • the BPMN definition is loaded from the absolute path of the BPMN file,
  • the WSDL files are resolved against the absolute path of BPMN file,
  • when redeploying the SU (or restarting Petals ESB container) the SU root directory is changed, and so we are no more able to resolve the WSDL files because the BPMN file no more exists on file system
The BPMN definition must be saved with the absolute path file. We will use the URI 'petals:<service-unit-name>:<bpmn-file>', but a Flowable contribution is needed to be able to configure the WSDL importer that will provide an URI resolver able to work with this URI.
Christophe DENEUX made changes - Tue, 27 Feb 2018 - 18:57:01 +0100
Field Original Value New Value
Status New [ 10000 ] Open [ 10002 ]
Priority Major [ 3 ]
Christophe DENEUX made changes - Tue, 27 Feb 2018 - 18:57:07 +0100
Status Open [ 10002 ] In Progress [ 10003 ]
Hide
Christophe DENEUX added a comment - Tue, 27 Feb 2018 - 18:58:26 +0100

The Flowable contribution has been accepted: see pull request 830

Show
Christophe DENEUX added a comment - Tue, 27 Feb 2018 - 18:58:26 +0100 The Flowable contribution has been accepted: see pull request 830
Hide
Christophe DENEUX added a comment - Fri, 9 Mar 2018 - 17:15:48 +0100

Fixed in trunk

Show
Christophe DENEUX added a comment - Fri, 9 Mar 2018 - 17:15:48 +0100 Fixed in trunk
Christophe DENEUX made changes - Fri, 9 Mar 2018 - 17:15:48 +0100
Status In Progress [ 10003 ] Resolved [ 10004 ]
Fix Version/s 1.1.0 [ 10812 ]
Resolution Fixed [ 1 ]
Transition Status Change Time Execution Times Last Executer Last Execution Date
New New Open Open
21m 3s
1
Christophe DENEUX
Tue, 27 Feb 2018 - 18:57:01 +0100
Open Open In Progress In Progress
6s
1
Christophe DENEUX
Tue, 27 Feb 2018 - 18:57:07 +0100
In Progress In Progress Resolved Resolved
9d 22h 18m
1
Christophe DENEUX
Fri, 9 Mar 2018 - 17:15:48 +0100



People

Dates

  • Created:
    Tue, 27 Feb 2018 - 18:35:58 +0100
    Updated:
    Fri, 9 Mar 2018 - 17:15:48 +0100
    Resolved:
    Fri, 9 Mar 2018 - 17:15:48 +0100