Uploaded image for project: 'jBPM'
  1. jBPM
  2. JBPM-2812

Timer does not take leaving transition defined at super-state

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • jBPM 3.2.9
    • jBPM 3.2.8
    • Runtime Engine
    • None

      Within a super-state, there is a state with a 'timeout' timer. At the due date of the created timer, it should take a "timeout" transition that is attached to the superstate. Example:

      <super-state name="super-state1">
      <state name="state1">
      <timer duedate="3 seconds" name="timeout-timer" transition="timeout">
      <action></action>
      </timer>
      <transition to="state2" name="go"></transition>
      </state>
      <state name="state2">
      <transition to="end" name="go"></transition>
      </state>
      <transition to="timed-out-end" name="timeout"></transition>
      </super-state>

      The problem is that the leaving transitions attached to the superstate are never found by the sub nodes as the "hasLeavingTransition(String pTransitionName)" method of the Node class will not inspect the superstate leaving transitions (instead of the getLeavingTransition(String pTransitionName) method of the same class...).

      The log contains the following WARN message, and the token is not signalled:
      State(state1) has no leaving transition with name: timeout

              rhn-support-mputz Martin Weiler (Inactive)
              rhn-support-mputz Martin Weiler (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: