I have used Apache commons SCXML for maintaining state machine in my project. We have used the Invoker to perform some activities as soon as the transition to the state,for which invoker is defined, is performed.
Issue is coming when invoker is called twice from same state. For example, from State "A" event "TEMP" is fired, then it moves to state "B". And as soon as it enters the state "B" invoker is called and callback method invoke() of Invoker class is being called.
<state id="A">
<transition event="TEMP" target="B"></transition>
</state>
<state id="B">
<invoke src="INVOKER" targettype="invoker-req">
<transition event="FAIL" target="A"></transition>
<transition event="SUCC" target="C"></transition>
</invoke>
</state>
Problem is coming when event "TEMP" is fired again from State A and then Invoker is not getting called. invoke() method is never called again. Can the invoker be called only once?
Please let me know how can I call the invoker/invoke() again. I am not getting much help on internet.
Thanks in advance.