transition leaving a child state of parallel
---------------------------------------------
Key: SCXML-161
URL: https://issues.apache.org/jira/browse/SCXML-161
Project: Commons SCXML
Issue Type: Bug
Affects Versions: 0.9
Reporter: Enrico Nardelli
The following SCXML is not correctly executed
<?xml version="1.0" encoding="UTF-8"?>
<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" exmode="lax"
initialstate="initialstate">
<state id="initialstate">
<transition event="start" target="onetwo" />
</state>
<parallel id="onetwo">
<transition event="onetwo_three" target="three" />
<state id="one">
</state>
<state id="two">
<transition event="two_four" target="four" />
</state>
</parallel>
<state id="three">
<transition event="three_one" target="one" />
<transition event="three_four" target="four" />
</state>
<state id="four">
<transition event="four_onetwo" target="onetwo" />
<transition event="four_three" target="three" />
</state>
</scxml>
Issuing event "onetwo_three" while in the parallel correctly brings the state
machine in "three".
Issuing event "two_four" while in the parallel raises an ILLEGAL_CONFIG error.
Here is a detailed log transcription showing first working transitions and
lastly the failing one:
3-giu-2011 3.30.35 org.apache.commons.scxml.model.Log execute
INFO: null: entering initialstate
event: start
3-giu-2011 3.30.46 org.apache.commons.scxml.model.Log execute
INFO: null: leaving initialstate
3-giu-2011 3.30.46 org.apache.commons.scxml.model.Log execute
INFO: null: entering onetwo
3-giu-2011 3.30.46 org.apache.commons.scxml.model.Log execute
INFO: null: entering one
3-giu-2011 3.30.46 org.apache.commons.scxml.model.Log execute
INFO: null: entering two
event: onetwo_three
3-giu-2011 3.30.53 org.apache.commons.scxml.model.Log execute
INFO: null: leaving two
3-giu-2011 3.30.53 org.apache.commons.scxml.model.Log execute
INFO: null: leaving one
3-giu-2011 3.30.53 org.apache.commons.scxml.model.Log execute
INFO: null: leaving onetwo
3-giu-2011 3.30.53 org.apache.commons.scxml.model.Log execute
INFO: null: entering three
event: three_four
3-giu-2011 3.31.04 org.apache.commons.scxml.model.Log execute
INFO: null: leaving three
3-giu-2011 3.31.04 org.apache.commons.scxml.model.Log execute
INFO: null: entering four
event: four_onetwo
3-giu-2011 3.31.08 org.apache.commons.scxml.model.Log execute
INFO: null: leaving four
3-giu-2011 3.31.08 org.apache.commons.scxml.model.Log execute
INFO: null: entering onetwo
3-giu-2011 3.31.08 org.apache.commons.scxml.model.Log execute
INFO: null: entering one
3-giu-2011 3.31.08 org.apache.commons.scxml.model.Log execute
INFO: null: entering two
event: two_four
3-giu-2011 3.31.15 org.apache.commons.scxml.env.SimpleErrorReporter onError
AVVERTENZA: ILLEGAL_CONFIG (Not all AND states active for parallel onetwo):
/onetwo : [/onetwo/one]
Illegal state machine configuration!
3-giu-2011 3.31.15 org.apache.commons.scxml.env.SimpleErrorReporter onError
AVVERTENZA: ILLEGAL_CONFIG (Multiple top-level OR states active!): <SCXML> :
[/four, /onetwo]
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira