This content has been marked as final.
Show 5 replies
-
1. Re: [BPMN2] Service Task input/output
kukeltje Aug 6, 2009 6:11 PM (in response to kukeltje)Can it be you 'confused it with the dataInput/Output?
-
2. Re: [BPMN2] Service Task input/output
kukeltje Aug 6, 2009 7:19 PM (in response to kukeltje)Ok, a more concrete example of the 'interface' for the java service task
The serviceTask gets the 'implementation="other"' and references an operation. From there we can do the following:<bpmn:interface id="interface21" name="org.jbpm.example.bpmn.ServiceTaskTest"> <bpmn:operation id="operation42" name="doSomething"> <bpmn:inMessageRef>inputMessage</bpmn:inMessageRef> <bpmn:outMessageRef>outputMessage</bpmn:outMessageRef> </bpmn:operation> </bpmn:interface> <bpmn:message id="inputMessage" name="input message" structureRef="itemDefinition1"></bpmn:message> <bpmn:message id="outputMessage" name="output message" structureRef="itemDefinition2"></bpmn:message> <bpmn:itemDefinition id="itemDefinition1" structureRef="jbpm:Java"> <jbpm:arg> <jbpm:object expr="#{joesmoe.handshakes.force}" /> </jbpm:arg> <jbpm:arg> <jbpm:object expr="#{joesmoe.handshakes.duration}" /> </jbpm:arg> </bpmn:itemDefinition> <bpmn:itemDefinition id="itemDefinition2" structureRef="jbpm:Java"> <jbpm:return> <jbpm:object expr="#{hand}" /> </jbpm:return> </bpmn:itemDefinition>
But we could also put things more directly under the operation to circumvent this BPEL/WSDL overhead.
Any thoughts? -
3. Re: [BPMN2] Service Task input/output
camunda Aug 7, 2009 3:31 AM (in response to kukeltje)
// more than one allowed in BPMN 2
This related to the dataInput int the service usage (ioSpecification if I remember it right). The interface doesn't have that.
The code you proposed looks right to me. -
4. Re: [BPMN2] Service Task input/output
kukeltje Aug 10, 2009 6:08 AM (in response to kukeltje)I think that according to the spec a itemDefinition element is not required, so the following is allowed to.
<bpmn:interface id="interface21" name="org.jbpm.example.bpmn.ServiceTaskTest"> <bpmn:operation id="operation42" name="doSomething"> <bpmn:inMessageRef>inputMessage</bpmn:inMessageRef> <bpmn:outMessageRef>outputMessage</bpmn:outMessageRef> </bpmn:operation> </bpmn:interface> <bpmn:message id="inputMessage" name="input message"> <jbpm:arg> <jbpm:object expr="#{joesmoe.handshakes.force}" /> </jbpm:arg> <jbpm:arg> <jbpm:object expr="#{joesmoe.handshakes.duration}" /> </jbpm:arg> </bpmn:message> <bpmn:message id="outputMessage" name="output message"> <jbpm:returnVal name="hand"> </bpmn:message>
Which would in most cases be sufficient. -
5. Re: [BPMN2] Service Task input/output
bgravette Jul 10, 2010 8:49 AM (in response to kukeltje)Does anyone have any background on why the <jbpm: arg> extension is still required for passing parameters into a ServiceTask with Java implementation? It seems that this would be natively supported in BPMN.