Intermediate signal throw and catch events are not getting executed
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-18-2016 07:37 AM
Tried executing different events based on userguide, but intermediate signal throw and catch events are not getting triggered. Please find bpd below :
Am I doing something wrong on handling "alert" signal. Kindly give some inputs.
<?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="Examples"> <signal id="alertSignal" name="alert" activiti:scope="processInstance"></signal> <message id="actionOnAcceptedLR" name="actionOnAcceptedLR"></message> <process id="demoProcessDefinition" name="demoProcessDefinition" isExecutable="true"> <subProcess id="subprocess1" name="Sub Process"> <startEvent id="startevent2" name="Start"></startEvent> <eventBasedGateway id="eventgateway1" name="Event Gateway"></eventBasedGateway> <sequenceFlow id="flow2" sourceRef="startevent2" targetRef="eventgateway1"></sequenceFlow> <intermediateCatchEvent id="messageintermediatecatchevent1" name="MessageCatchEvent"> <messageEventDefinition messageRef="actionOnAcceptedLR"></messageEventDefinition> </intermediateCatchEvent> <sequenceFlow id="flow3" sourceRef="eventgateway1" targetRef="messageintermediatecatchevent1"></sequenceFlow> <intermediateCatchEvent id="timerintermediatecatchevent1" name="TimerCatchEvent"> <timerEventDefinition> <timeDuration>P01D</timeDuration> </timerEventDefinition> </intermediateCatchEvent> <sequenceFlow id="flow4" sourceRef="eventgateway1" targetRef="timerintermediatecatchevent1"></sequenceFlow> <serviceTask id="servicetask1" name="Service Task" activiti:expression="${processDelegate.dummy1(execution)}"></serviceTask> <sequenceFlow id="flow5" sourceRef="messageintermediatecatchevent1" targetRef="servicetask1"></sequenceFlow> <serviceTask id="servicetask2" name="Service Task" activiti:expression="${processDelegate.dummy2(execution)}"></serviceTask> <sequenceFlow id="flow7" sourceRef="timerintermediatecatchevent1" targetRef="servicetask2"></sequenceFlow> <endEvent id="endevent2" name="End"></endEvent> <sequenceFlow id="flow8" sourceRef="servicetask2" targetRef="endevent2"></sequenceFlow> <intermediateCatchEvent id="signalintermediatecatchevent1" name="SignalCatchEvent"> <signalEventDefinition signalRef="alertSignal"></signalEventDefinition> </intermediateCatchEvent> <sequenceFlow id="flow11" sourceRef="signalintermediatecatchevent1" targetRef="servicetask3"></sequenceFlow> <serviceTask id="servicetask3" name="Service Task" activiti:expression="${processDelegate.dummy2(execution)}"></serviceTask> <sequenceFlow id="flow12" sourceRef="servicetask3" targetRef="endevent4"></sequenceFlow> <endEvent id="endevent4" name="End"></endEvent> <intermediateThrowEvent id="signalintermediatethrowevent1" name="SignalThrowEvent"> <signalEventDefinition signalRef="alertSignal"></signalEventDefinition> </intermediateThrowEvent> <sequenceFlow id="flow13" sourceRef="servicetask1" targetRef="signalintermediatethrowevent1"></sequenceFlow> </subProcess> <startEvent id="startevent1" name="Start"></startEvent> <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="subprocess1"></sequenceFlow> <endEvent id="endevent3" name="End"></endEvent> <sequenceFlow id="flow9" sourceRef="subprocess1" targetRef="endevent3"></sequenceFlow> </process> <bpmndi:BPMNDiagram id="BPMNDiagram_demoProcessDefinition"> <bpmndi:BPMNPlane bpmnElement="demoProcessDefinition" id="BPMNPlane_demoProcessDefinition"> <bpmndi:BPMNShape bpmnElement="subprocess1" id="BPMNShape_subprocess1"> <omgdc:Bounds height="381.0" width="561.0" x="180.0" y="120.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="startevent2" id="BPMNShape_startevent2"> <omgdc:Bounds height="35.0" width="35.0" x="210.0" y="230.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="eventgateway1" id="BPMNShape_eventgateway1"> <omgdc:Bounds height="40.0" width="40.0" x="320.0" y="227.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="messageintermediatecatchevent1" id="BPMNShape_messageintermediatecatchevent1"> <omgdc:Bounds height="35.0" width="35.0" x="430.0" y="160.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="timerintermediatecatchevent1" id="BPMNShape_timerintermediatecatchevent1"> <omgdc:Bounds height="35.0" width="35.0" x="430.0" y="310.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask1" id="BPMNShape_servicetask1"> <omgdc:Bounds height="55.0" width="105.0" x="510.0" y="150.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask2" id="BPMNShape_servicetask2"> <omgdc:Bounds height="55.0" width="105.0" x="510.0" y="300.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="endevent2" id="BPMNShape_endevent2"> <omgdc:Bounds height="35.0" width="35.0" x="660.0" y="310.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="signalintermediatecatchevent1" id="BPMNShape_signalintermediatecatchevent1"> <omgdc:Bounds height="35.0" width="35.0" x="244.0" y="388.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask3" id="BPMNShape_servicetask3"> <omgdc:Bounds height="55.0" width="105.0" x="326.0" y="378.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="endevent4" id="BPMNShape_endevent4"> <omgdc:Bounds height="35.0" width="35.0" x="476.0" y="388.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="signalintermediatethrowevent1" id="BPMNShape_signalintermediatethrowevent1"> <omgdc:Bounds height="35.0" width="35.0" x="650.0" y="160.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1"> <omgdc:Bounds height="35.0" width="35.0" x="99.0" y="293.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="endevent3" id="BPMNShape_endevent3"> <omgdc:Bounds height="35.0" width="35.0" x="780.0" y="290.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2"> <omgdi:waypoint x="245.0" y="247.0"></omgdi:waypoint> <omgdi:waypoint x="320.0" y="247.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3"> <omgdi:waypoint x="340.0" y="227.0"></omgdi:waypoint> <omgdi:waypoint x="447.0" y="195.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4"> <omgdi:waypoint x="340.0" y="267.0"></omgdi:waypoint> <omgdi:waypoint x="447.0" y="310.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5"> <omgdi:waypoint x="465.0" y="177.0"></omgdi:waypoint> <omgdi:waypoint x="510.0" y="177.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7"> <omgdi:waypoint x="465.0" y="327.0"></omgdi:waypoint> <omgdi:waypoint x="510.0" y="327.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8"> <omgdi:waypoint x="615.0" y="327.0"></omgdi:waypoint> <omgdi:waypoint x="660.0" y="327.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11"> <omgdi:waypoint x="279.0" y="405.0"></omgdi:waypoint> <omgdi:waypoint x="326.0" y="405.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12"> <omgdi:waypoint x="431.0" y="405.0"></omgdi:waypoint> <omgdi:waypoint x="476.0" y="405.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13"> <omgdi:waypoint x="615.0" y="177.0"></omgdi:waypoint> <omgdi:waypoint x="650.0" y="177.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1"> <omgdi:waypoint x="134.0" y="310.0"></omgdi:waypoint> <omgdi:waypoint x="180.0" y="310.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9"> <omgdi:waypoint x="741.0" y="310.0"></omgdi:waypoint> <omgdi:waypoint x="780.0" y="307.0"></omgdi:waypoint> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram></definitions>
Am I doing something wrong on handling "alert" signal. Kindly give some inputs.
Labels:
- Labels:
-
Archive
1 REPLY 1
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-21-2016 03:19 PM
I think you are confusing Signal Throw Events, Signal Start Events and Event sub processes.
An intermediate throw event must be inline, meaning, it must have both an incoming and an outgoing flow.
I have modified your process to be valid and you can see it below:
Now this is obvious a trivial example as there is no reason not to have the two service tasks follow on from each other, but in terms of signal flow, I think this gives you what you were looking for.
Greg
