cancel
Showing results for 
Search instead for 
Did you mean: 

Execution creation - why there is new execution created

tomekzaremba
Champ in-the-making
Champ in-the-making
Hi,

we are evaluating Activiti as engine for next project developed in our company. I'm new, so my question may be a little bit silly. I don't understand what are the rules of execution creation?

On attached image I show part of my BPMN process. Execution ids are given for each serviceTask. First question: why modifyParty block is executed in separate execution? For me it causes variables scopes problem - result of this serviceTask must be saved in execution local scope. Because new execution is created - result is lost.

Secondly: after modifyParty block I start subProcess for processing each item in contracts collection (in multi instance way). Same question as earlier - why transferService block is executed in new execution instance and not within same as "Set contract to PROCESSING" and "Set contract to WAITING". Following message-catch event also created new execution.

Here's the image: http://imgur.com/GE7TodX
2 REPLIES 2

tomekzaremba
Champ in-the-making
Champ in-the-making
Can't find edit option: I see that execution creation is related with boundary error event - when I removed it modifyParty serviceTask did not create new execution. Why those two are related so close?

jbarrez
Star Contributor
Star Contributor
That service task has a boundary event: the execution is created to denote the scope for the event.
It doesn't make sens you have to use setVariableLocal, regular setVariable should work. Do you have a unit test demonstrating this wioth this process?

Same answer for your second question: that is to denote the scope of where something is applicable.