Hi,
In the documentation there exists the following paragraph:
Contrary to a compensation boundary event attached to a subprocess, a compensation event subprocess consumes a thrown compensation event. That means, activities contained in the subprocess are not compensated by default. Instead, the compensation event subprocess can recursively trigger compensation for activities contained in its parent.
Below is the following process definition, which indicates that in the event subprocess, first it triggers compensation for the Flight task and then for the Hotel task.
My question is, how does the Intermediate Throwing Compensation Event references the task to compensate? It seems that the activityRef property of the Intermediate Throwing Compensation Event can be used for such case. But if I reference the tasks, I get an error from the process machine during deployment.
ENGINE-09005 Could not parse BPMN process. Errors: ↵* Invalid attribute value for ‘activityRef’: no activity with id ‘compensation1’ in scope ‘SubProcess_0v1tsrc’ | process.bpmn | line 31 | column 72↵* Invalid attribute value for ‘activityRef’: no activity with id ‘compensation2’ in scope ‘SubProcess_0v1tsrc’ | process.bpmn | line 37 | column 72
In my case, there exists activities with the IDs compensation1 and compensation2. The Activity Ref dropdown in the properties panel of the Intermediate Throwing Compensation Event lists also the ID’s available in my subprocess.
Is this a bug? Or do I miss something?
Cheers,
Christian
