Description of problem: - Validating a process (containing a Service Task inside Swim Lane) in Web Designer complains with ERROR "java.lang.IllegalArgumentException: No interfaces found" , as quoted below. ~~~ 14:20:53,669 ERROR [stderr] (pool-119-thread-2) java.lang.IllegalArgumentException: No interfaces found 14:20:53,669 ERROR [stderr] (pool-119-thread-2) at org.jbpm.bpmn2.xml.ServiceTaskHandler.handleNode(ServiceTaskHandler.java:52) 14:20:53,669 ERROR [stderr] (pool-119-thread-2) at org.jbpm.bpmn2.xml.TaskHandler.end(TaskHandler.java:168) 14:20:53,669 ERROR [stderr] (pool-119-thread-2) at org.drools.core.xml.ExtensibleXmlParser.endElement(ExtensibleXmlParser.java:422) 14:20:53,669 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source) 14:20:53,670 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.impl.xs.XMLSchemaValidator.endElement(Unknown Source) 14:20:53,670 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source) 14:20:53,670 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) 14:20:53,670 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 14:20:53,670 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) 14:20:53,670 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.drools.core.xml.ExtensibleXmlParser.read(ExtensibleXmlParser.java:301) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.drools.core.xml.ExtensibleXmlParser.read(ExtensibleXmlParser.java:180) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.jbpm.compiler.xml.XmlProcessReader.read(XmlProcessReader.java:46) 14:20:53,671 ERROR [stderr] (pool-119-thread-2) at org.jbpm.compiler.ProcessBuilderImpl.addProcessFromXml(ProcessBuilderImpl.java:276) 14:20:53,672 ERROR [stderr] (pool-119-thread-2) at org.drools.compiler.compiler.PackageBuilder.addProcessFromXml(PackageBuilder.java:699) 14:20:53,672 ERROR [stderr] (pool-119-thread-2) at org.drools.compiler.compiler.CompositeKnowledgeBuilderImpl.buildResources(CompositeKnowledgeBuilderImpl.java:149) 14:20:53,672 ERROR [stderr] (pool-119-thread-2) at org.drools.compiler.compiler.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:86) 14:20:53,672 ERROR [stderr] (pool-119-thread-2) at org.drools.compiler.kie.builder.impl.KieBuilderSetImpl.buildChanges(KieBuilderSetImpl.java:121) 14:20:53,672 ERROR [stderr] (pool-119-thread-2) at org.drools.compiler.kie.builder.impl.KieBuilderSetImpl.build(KieBuilderSetImpl.java:76) 14:20:53,672 ERROR [stderr] (pool-119-thread-2) at org.guvnor.common.services.builder.Builder.addResource(Builder.java:290) 14:20:53,672 ERROR [stderr] (pool-119-thread-2) at org.guvnor.common.services.builder.Builder.updateResource(Builder.java:394) 14:20:53,673 ERROR [stderr] (pool-119-thread-2) at org.guvnor.common.services.builder.BuildServiceImpl.updatePackageResource(BuildServiceImpl.java:216) 14:20:53,673 ERROR [stderr] (pool-119-thread-2) at org.guvnor.common.services.builder.BuildServiceImpl$Proxy$_$$_WeldClientProxy.updatePackageResource(BuildServiceImpl$Proxy$_$$_WeldClientProxy.java) 14:20:53,673 ERROR [stderr] (pool-119-thread-2) at org.guvnor.common.services.builder.ResourceChangeIncrementalBuilder$4.run(ResourceChangeIncrementalBuilder.java:243) 14:20:53,673 ERROR [stderr] (pool-119-thread-2) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 14:20:53,673 ERROR [stderr] (pool-119-thread-2) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 14:20:53,673 ERROR [stderr] (pool-119-thread-2) at java.lang.Thread.run(Thread.java:662) ... ~~~ It seems that this issue specifically happens when using Service Tasks inside Swim Lane. Version-Release number of selected component (if applicable): - BPMS 6.0.2 How reproducible: - Always using the attached "swimlaneProcess.bpmn2" process definition in Web Designer of BPMS 6.0.2 Steps to Reproduce: 1. Import the attached "swimlaneProcess.bpmn2" process definition in Web Designer 2. The Service Task contains the values specified for Interface and Operation properties 3. Save and validate it and it should throw the "java.lang.IllegalArgumentException: No interfaces found" ERROR as shown above. Actual results: - The server.log shows the "java.lang.IllegalArgumentException: No interfaces found" ERROR during validation although Interface name was specified. Expected results: - There should be no validation error. Additional info: - NA
Created attachment 926718 [details] swimlaneProcess.bpmn2 swimlaneProcess.bpmn2
It seems that for service tasks outside swimlanes the BPMN2 XML correctly contains the <message> and <interface> elements above the <process>, when it is placed inside a swimlane, those elements are no longer available. I assume that the script that transforms the drools:serviceinterface and drools:serviceoperation attributes on service task into <message> and <interface> elements is not taking composite nodes into account (as the same seems to happen with embedded sub-process).
fixed in designer master for both lanes and subprocesses
fix in designer 6.2.x branch
The commit was not on branch 6.2.x when ER3 was build.
The commit with the number of this issue is present on 6.2.x branch, now.
Verified on 6.1.0ER4.