Send Task and Receive Task of a BPMN2 process do not work when they are used in different processes as the latter process seems to be waiting for the message to arrive
Issue
- The requirement is to have two business processes to communicate each other. To this end, users like to develop two processes where one uses a
Send Task
to send the message (and it seems to work), the other uses theReceive Task
to receive that message. Unfortunately, while the sending process seems to send the message properly, but the receiving process's task keeps on waiting for the message. Is there anything missing in this implementation? - Looking at the source code of
org.jbpm.bpmn2.handler.SendTaskHandler
(which is the defaultWorkItemHandler
implementation ofSend Task
) it does not do any specific to what the name suggests (i.e. sending messages) , but it instead does the job of just logging.
public void executeWorkItem(WorkItem workItem, WorkItemManager manager) {
String message = (String) workItem.getParameter("Message");
logger.info("Sending message: {}", message);
manager.completeWorkItem(workItem.getId(), null);
}
Is it what is expected from this Send Task
? How about someone wants to implement his/her logic in Send Task
or Receive Task
WorkItemHanlder? How to do it?
Environment
- Red Hat JBoss BPM Suite (BPMS)
- 6.0.x
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.