6 Replies Latest reply on Oct 7, 2011 3:33 AM by mariemm

    Join node 'Gateway' has no type (discriminator)


      Hey there,


      I get this error when I try to use a discriminator in my bpmn file: Join node 'Gateway' [26] has no type.


      It seems to be known but not to be fixed (https://issues.jboss.org/browse/JBRULES-2879) . Does anyone know a workaround or anything about it that could help?



        • 1. Re: Join node 'Gateway' has no type (discriminator)

          Are you using eclipse editor or web-designer?

          The problems seems to be related to the issue that no default type is set when you add a gateway.

          From the issue you have mentioned:


          "So the work around is search for all the complexGateway and change them to either exclusive or parallel Gateway, and now you can save and update and change the flow instead of lowercasing it in between. There shouldn't be complexGateway in BPMN2 anyway."


          Can you isolate the problem to a simple process and post it here?

          • 2. Re: Join node 'Gateway' has no type (discriminator)

            I'm using the eclipse editor and changing the type of the gateway to a discriminator and get this "Join node 'Gateway' has no type" error


            Changing it back to XOR or AND wouldnt help but if i get this right, using discriminator (/complexGateway) is just not possible atm?


            This is a simple process where i get this error too:



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

            <definitions id="Definition"






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







              <process processType="Private" isExecutable="true" id="com.sample.bpmn.discriminator" name="sample3.b" >


                <!-- nodes -->

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

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



                <scriptTask id="_5" name="Script1" scriptFormat="http://www.java.com/java" >

                  <script>System.out.println("start to 1");</script>


                <scriptTask id="_6" name="Script4" scriptFormat="http://www.java.com/java" >

                  <script>System.out.println("script 3 executed");</script>


                <scriptTask id="_7" name="Script2" scriptFormat="http://www.java.com/java" >

                  <script>System.out.println("gateway 1 to gateway 2");</script>


                <complexGateway id="_8" name="Gateway" gatewayDirection="Converging" />

                <exclusiveGateway id="_9" name="Gateway" gatewayDirection="Diverging" />

                <scriptTask id="_10" name="Script3" >

                  <script>System.out.println("gateway 2 to gateway 1");</script>



                <!-- connections -->

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

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

                <sequenceFlow id="_9-_6" sourceRef="_9" targetRef="_6" name="to 4" >

                  <conditionExpression xsi:type="tFormalExpression" >return false;</conditionExpression>


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

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

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

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

                <sequenceFlow id="_9-_10" sourceRef="_9" targetRef="_10" name="to 3" tns:priority="1" >

                  <conditionExpression xsi:type="tFormalExpression" language="http://www.jboss.org/drools/rule" >eval(true)</conditionExpression>






                <bpmndi:BPMNPlane bpmnElement="com.sample.bpmn.discriminator" >

                  <bpmndi:BPMNShape bpmnElement="_1" >

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


                  <bpmndi:BPMNShape bpmnElement="_2" >

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


                  <bpmndi:BPMNShape bpmnElement="_5" >

                    <dc:Bounds x="144" y="147" width="80" height="48" />


                  <bpmndi:BPMNShape bpmnElement="_6" >

                    <dc:Bounds x="448" y="270" width="80" height="48" />


                  <bpmndi:BPMNShape bpmnElement="_7" >

                    <dc:Bounds x="413" y="155" width="80" height="48" />


                  <bpmndi:BPMNShape bpmnElement="_8" >

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


                  <bpmndi:BPMNShape bpmnElement="_9" >

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


                  <bpmndi:BPMNShape bpmnElement="_10" >

                    <dc:Bounds x="128" y="231" width="80" height="48" />


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

                    <di:waypoint x="488" y="294" />

                    <di:waypoint x="628" y="293" />


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

                    <di:waypoint x="72" y="168" />

                    <di:waypoint x="184" y="171" />


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

                    <di:waypoint x="299" y="298" />

                    <di:waypoint x="488" y="294" />


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

                    <di:waypoint x="292" y="176" />

                    <di:waypoint x="453" y="179" />


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

                    <di:waypoint x="184" y="171" />

                    <di:waypoint x="292" y="176" />


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

                    <di:waypoint x="168" y="255" />

                    <di:waypoint x="292" y="176" />


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

                    <di:waypoint x="453" y="179" />

                    <di:waypoint x="299" y="298" />


                  <bpmndi:BPMNEdge bpmnElement="_9-_10" >

                    <di:waypoint x="299" y="298" />

                    <di:waypoint x="168" y="255" />






            • 3. Re: Join node 'Gateway' has no type (discriminator)

              Which version of ecilpse plugin are you using? I can open the process you have pasted in 5.1.0.Final without any problem.

              • 4. Re: Join node 'Gateway' has no type (discriminator)

                i can open it aswell. but i get an error when i start the process. using 5.1 as well.

                • 5. Re: Join node 'Gateway' has no type (discriminator)

                  It turned out that I don't need the discriminator anymore. Thank You nonetheless. :-)

                  • 6. Re: Join node 'Gateway' has no type (discriminator)

                    I am getting this error when using n-of-m type alos. In .bpmn file it saved without any extra info of type and n number.

                    <complexGateway id="_10" name="Join" gatewayDirection="Converging" />

                    In User guide is mentioned that only two types are supported (OR and AND)



                    Does it mean it is not implemented? Is it going to be implemented?