0 Replies Latest reply on Oct 20, 2011 8:36 AM by rahul.krishnan

    Exception Handler not working in Drools flow(bpmn) but working fine in .rf

    rahul.krishnan

      Hi,

            I have tried the fault node in drools flow file and it has worked fine in .rf. Whenever a faultnode is triggered it will search for the fault name and will be caught at the apropriate Exception Handlers. But When am implementing the same in .bpmn the fault node is triggered but the flow is not reaching Exception Handlers ie The flow will exit upon reaching the fault node.

       

      How can i resolve this problem? 

       

      I will give the xml format of bpmn here

       

       

      <?xml version="1.0" encoding="UTF-8"?>

      <definitions id="Definition"

                   targetNamespace="http://www.jboss.org/drools"

                   typeLanguage="http://www.java.com/javaTypes"

                   expressionLanguage="http://www.mvel.org/2.0"

                   xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"

                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

                   xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"

                   xmlns:g="http://www.jboss.org/drools/flow/gpd"

                   xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"

                   xmlns:dc="http://www.omg.org/spec/DD/20100524/DC"

                   xmlns:di="http://www.omg.org/spec/DD/20100524/DI"

                   xmlns:tns="http://www.jboss.org/drools">

       

       

        <escalation id="error" escalationCode="error" />

        <process processType="Private" isExecutable="true" id="checkExce" name="CheckException.b" >

       

       

          <!-- nodes -->

          <startEvent id="_1" name="Start" />

          <scriptTask id="_2" name="Script" >

            <script>System.out.println("here in script node");</script>

          </scriptTask>

          <scriptTask id="_4" name="Script" >

            <script>System.out.println("Error Event");</script>

          </scriptTask>

          <endEvent id="_6" name="Error" >

            <escalationEventDefinition escalationRef="error" />

          </endEvent>

          <intermediateCatchEvent id="_7" name="Error" >

            <signalEventDefinition signalRef="error"/>

          </intermediateCatchEvent>

          <endEvent id="_8" name="End" >

              <terminateEventDefinition/>

          </endEvent>

       

       

          <!-- connections -->

          <sequenceFlow id="_1-_2" sourceRef="_1" targetRef="_2" />

          <sequenceFlow id="_7-_4" sourceRef="_7" targetRef="_4" />

          <sequenceFlow id="_2-_6" sourceRef="_2" targetRef="_6" />

          <sequenceFlow id="_4-_8" sourceRef="_4" targetRef="_8" />

       

       

        </process>

       

       

        <bpmndi:BPMNDiagram>

          <bpmndi:BPMNPlane bpmnElement="checkExce" >

            <bpmndi:BPMNShape bpmnElement="_1" >

              <dc:Bounds x="100" y="100" width="48" height="48" />

            </bpmndi:BPMNShape>

            <bpmndi:BPMNShape bpmnElement="_2" >

              <dc:Bounds x="194" y="100" width="80" height="48" />

            </bpmndi:BPMNShape>

            <bpmndi:BPMNShape bpmnElement="_4" >

              <dc:Bounds x="138" y="284" width="80" height="48" />

            </bpmndi:BPMNShape>

            <bpmndi:BPMNShape bpmnElement="_6" >

              <dc:Bounds x="434" y="212" width="48" height="48" />

            </bpmndi:BPMNShape>

            <bpmndi:BPMNShape bpmnElement="_7" >

              <dc:Bounds x="73" y="283" width="48" height="48" />

            </bpmndi:BPMNShape>

            <bpmndi:BPMNShape bpmnElement="_8" >

              <dc:Bounds x="326" y="292" width="48" height="48" />

            </bpmndi:BPMNShape>

            <bpmndi:BPMNEdge bpmnElement="_1-_2" >

              <di:waypoint x="124" y="124" />

              <di:waypoint x="234" y="124" />

            </bpmndi:BPMNEdge>

            <bpmndi:BPMNEdge bpmnElement="_7-_4" >

              <di:waypoint x="97" y="307" />

              <di:waypoint x="178" y="308" />

            </bpmndi:BPMNEdge>

            <bpmndi:BPMNEdge bpmnElement="_2-_6" >

              <di:waypoint x="234" y="124" />

              <di:waypoint x="458" y="236" />

            </bpmndi:BPMNEdge>

            <bpmndi:BPMNEdge bpmnElement="_4-_8" >

              <di:waypoint x="178" y="308" />

              <di:waypoint x="350" y="316" />

            </bpmndi:BPMNEdge>

          </bpmndi:BPMNPlane>

        </bpmndi:BPMNDiagram>

       

       

      </definitions>