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

Solution Unverified - Updated -

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 the Receive 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 default WorkItemHandler implementation of Send 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 of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In