Dear all,
I’m working with Camunda Platform 7, and I have the following process
the goal is to have parallel shortcut approval / rejections (like the logical “AND” behavior in many languages):
- approval needs both branches to approve
- if one rejects, the “shortcut” behavior is triggered via the boundary event that is identical for both branches, so it doesn’t need for the other branch to approve reject (since “FALSE AND X” is FALSE for any X).
The problem I have is that when I send the rejection message, I get the following error:
org.camunda.bpm.engine.MismatchingMessageCorrelationException: ENGINE-13031 Cannot correlate a message with name 'SignatureRejected' to a single execution. 2 executions match the correlation keys: CorrelationSet [businessKey=null, processInstanceId=null, processDefinitionId=null, correlationKeys=null, localCorrelationKeys=null, tenantId=null, isTenantIdSet=false, isExecutionsOnly=false]
I think this happens because I have two tokens that are travelling both branches in parallel, and both match with the message, but this is exactly what I want: I want both wait for approval
tasks to react to the rejection and move forward.
What is the proper way to achieve the desired goal of “shortcut rejection”?