<xuiProcessor id="genFlow" context="accountQueryCtx"> <state id="initial" type="initial"> <entryActions> <Step id="step1" implClass="com.ibm.btt.rcp.nav.Step1"/> </entryActions> <transitions> <transition id="step1.ok" targetState="state2"/> <transition id="step1.error" targetState="finalNotOk"/> </transitions> </state> <state id="state2"> <entryActions> <Step id="step2" implClass="com.ibm.btt.rcp.nav.Step2"/> </entryActions> <transitions> <transition id="step2.ok" targetState="finalOk"/> <transition id="step2.error" targetState="finalNotOk"/> </transitions> </state> <state id="finalOk" type="final" typeIdInfo="Ok"/> <state id="finalNotOk" type="final" typeIdInfo="error"/> </xuiProcessor>
<xuiProcessor id="genFlow" context="accountQueryCtx"> <state id="initial" type="initial"> <entryActions> <Step id="step1" implClass="com.ibm.btt.rcp.nav.Step1"/> </entryActions> <transitions> <transition id="step1.ok" targetState="pageState"/> <transition id="step1.error" targetState="finalNotOk"/> </transitions> </state> <xuiState id="pageState" type="page" typeIdInfo="jar:///config/abc.xml"> <transitions> <transition id="pageState.ok" targetState="finalOk"/> </transitions> </xuiState> <state id="finalOk" type="final" typeIdInfo="ok"/> <state id="finalNotOk" type="final" typeIdInfo="error"/> </xuiProcessor>
... <xuiState id="subflowstate" type="page" typeIdInfo="jar:///config/parentState.xml"> <entryActions> <executeSubflowAct id="getSepaTableAct" processor="getFlow"> </executeSubflowAct> </entryActions> <transitions> <transition id="getSepaTableAct.ok" targetState="finalOk"/> <transition id="getSepaTableAct.error" targetState="finalNotOk"/> </transitions> </xuiState> ...
In the above figure, when XUI Processor 1 reaches state 3, XUI Processor 2 is called by the <executeXuiSubflowAct> tag. XUI Processor 1 does not proceed with the next state until the subflow finishes. If the subflow is defined in a XUIState, the sub processor is displayed before the XUI page. The following example explains how to define the XUI processor as a subflow with the <executeXuiSubflowAct> tag.
... <state id="subflowstate"> <entryActions> <executeXuiSubflowAct id="getSepaTableAct" processor="getFlow"> </executeXuiSubflowAct> </entryActions> <transitions> <transition id="getSepaTableAct.ok" targetState="finalOk"/> <transition id="getSepaTableAct.error" targetState="finalNotOk"/> </transitions> </state> ...
<?xml version="1.0"?> <case012.xml> <xuiProcessor id="case012" context="accountQueryCtx"> <state id="initial" type="initial"> <entryActions> <Step id="initialStep" implClass="com.ibm.btt.rcp.test.step.InitialStep"/> </entryAction> <transitions> <transition id="initialStep.ok" targetState="pageState1"/> <transition id="initialStep.error" targetState="finalNotOk"/> </transitions> </state> <xuiState id="pageState1" type="page" typeIdInfo="jar:///config/case0121.xui"> <transitions> <transition id="pageState1.ok" targetState="pageState2"/> </transitions> </xuiState> <xuiState id="pageState2" type="page" typeIdInfo="jar:///config/case0122.xui"> <transitions> <transition id="pageState1.ok" targetState="finalOk"/> </transitions> </xuiState> <state id="finalOk" type="final" typeIdInfo="ok"/> <state id="finalNotOk" type="final" typeIdInfo="error"/> </xuiProcessor> </case012.xml>
<?xml version="1.0"?> <case013.xml> <xuiProcessor id="case013" context="accountQueryCtx"> <state id="initial" type="initial"> <entryActions> <Step id="initialStep" implClass="com.ibm.btt.rcp.test.step.InitialStep"/> </entryAction> <transitions> <transition id="initialStep.ok" targetState="pageState1"/> <transition id="initialStep.error" targetState="finalNotOk"/> </transitions> </state> <xuiState id="pageState1" type="page" typeIdInfo="jar:///config/case0131.xui" context="pageContext1"> <transitions> <transition id="pageState1.ok" targetState="pageState2"/> </transitions> </xuiState> <xuiState id="pageState2" type="page" typeIdInfo="jar:///config/case0132.xui"> <transitions> <transition id="pageState2.ok" targetState="finalOk"/> </transitions> </xuiState> <state id="finalOk" type="final" typeIdInfo="ok"/> <state id="finalNotOk" type="final" typeIdInfo="error"/> </xuiProcessor> </case013.xml>
<?xml version="1.0"?> <case016.xml> <xuiProcessor id="case016" context="accountQueryCtx"> <state id="initial" type="initial"> <entryActions> <Step id="initialStep" implClass="com.ibm.btt.rcp.test.step.InitialStep"/> </entryAction> <transitions> <transition id="initialStep.ok" targetState="finalOk"/> <transition id="initialStep.error" targetState="finalNotOk"/> </transitions> </state> <xuiState id="finalOk" type="final" typeIdInfo="ok" finalPage="jar:///config/final.xui"/> <state id="finalNotOk" type="final" typeIdInfo="error"/> </xuiProcessor> </case016.xml>