BPMN in Action: Collaboration of Two Process Engines

In the previous post I have shown how to model separate BPMN processes that communicate using message flow. In order to execute such a process collaboration, all processes need to run in the same process engine. However, if you have processes from different business partners with their own BPM systems, the processes are executed in different process engines.

The video shows how to implement the communication between processes in different systems, using a REST interface. One of the processes is executed in Bonita, the other one in Camunda. The Bonita process exchanges messages with a support process that handles the communication with the Camunda process via Camunda’s REST interface.


The following zip file contains the Bonita project file as well as the BPMN process for camunda.



In Camunda Platform Run :

  • The default port is 8080. If it is already in use (e. g. by Bonita), you can change the port by adding the following lines to the file configuration\default.yml:
# change port
   port: 9090
  • Start the server using „start.bat“ (the startup may take a while).

In Camunda Modeler:

  • Open the file „process-request-and-order.bpmn“.
  • Use the Upload-Button at the lower edge of the modeler widnow (next to „Camunda Platform“) in order to deploy the process to the server. If the port has been changed, the REST Endpoint address in the subsequent dialog must be adapted.
  • Open „localhost:9090“ in a browser (if you are using port 9090). User: demo, Password: demo.
  • Select the application „Tasklist“.

In Bonita:

  • Import bos file in Bonita into a new project.
  • If a different port than 9090 is used, the port-number must be changed in the parameters of the REST connectors in the lower process. In the second and third task, the URL is stored in a local variable (by scripts setting the default values).
  • In „Organization“: Deploy „BPMCO.organization“ (default user: admin).
  • Deploy Business Data Model.
  • In „Diagrams“: Deploy the diagram „Collaboration – Request and Order External“ (or press „Run“ to deploy the diagram and directly start the execution in one step).
  • With „Applications“ you can open the portal. Select „Bonita User Application“.
  • Any user can start the process. The user „admin“ can perfom all process roles, so that you don’t need to switch between different users.
  • The default password for all users is „bpm“.