Hi guys,
With JBPM 5.1, if I define a Service Task with no interfaces (it's legal in BPMN2) -for instance using the new BPMN2 eclipse editor- this is not accepted.
Indeed, when I load the resource in the knowledge base, I see:
java.lang.IllegalArgumentException: No interfaces found
at org.jbpm.bpmn2.xml.ServiceTaskHandler.handleNode(ServiceTaskHandler.java:51)
at org.jbpm.bpmn2.xml.TaskHandler.end(TaskHandler.java:188)
at org.drools.xml.ExtensibleXmlParser.endElement(ExtensibleXmlParser.java:414)
That behaviour it's very simple to reproduce (and the ServiceTaskHandler code is very clear) so I suppose that it's not a bug.
Anyway, in my opinion this is not correct. In JBPM/Drools, I can set which WorkItemHandler I want to use for each Task "type".
So if I want to have serviceTasks that are based on other informations (and not the interface) I cannot do that using a Service Task.
Ok, I know that I can do that with the "generic" task, but I'd like to use a Service Task (It's the correct task from the modeling point-of-view).
Why this behaviour has been implemented?