AnsweredAssumed Answered

Signal throwing event does not proceed/continue

Question asked by iblanco on Jul 16, 2014
Latest reply on Jul 21, 2014 by trademak
Hi,

I have a little process that has 2 execution paths. One of them arrives at a user task that has an exit transition as well as a boundary signal event. That way I can end the user task by completing it or by receiving a signal.Another parallel execution path in the same process calls a signal throwing intermediate event after some work. This event throws the signal that cancels the user task in the other execution path. The signal itself is set activiti:scope to processInstance, so that to make sure that no other process instances are cancelled, only mine.

When the signal is reached the user task is cancelled as expected and this execution path goes directly to the end event but the process itself does not end because the other execution path, the one that fired the event does not proceed is stuck in the intermediate signal throwing event. Shouldn't the execution proceed right after firing the event ?

I know boundary events can be configured to cancel or not the activity, but this does not seem to make sense on an intermediate throwing event. What is the use of making it "just stay there" ?

Those are the most significant excerpts from my process definition:


    <boundaryEvent id="catchAlreadyConfigured" name="Catch already configured" attachedToRef="provideConfigurationData">
      <outgoing>SequenceFlow_2</outgoing>
      <signalEventDefinition id="_MessageEventDefinition_3" signalRef="Signal_4"/>
    </boundaryEvent>

    <intermediateThrowEvent id="throwAlreadyConfiguredEvent" name="Throw already configured event">
      <incoming>SequenceFlow_10</incoming>
      <outgoing>SequenceFlow_4</outgoing>
      <signalEventDefinition id="_MessageEventDefinition_2" signalRef="Signal_4"/>
    </intermediateThrowEvent>

    <signal id="Signal_4" activiti:scope="processInstance" name="already-configured"/>

Outcomes