1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 | <!-- xuiProcessor表示XUI富客户端页面流流程, id唯一标示这个xui富客户端页面流程--> <xuiProcessor context="creditCardsCtx" id="creditCardsProc"> <!-- 开始状态,执行initialStep业务操作,并根据结果导航到下一个状态--> <state id="initial" type="initial"> <entryActions> <Step id="initialStep" implClass="com.ibm.btt.rcp.sample.operation.step.InitialStep" /> </entryActions> <transitions> <transition id="initialStep.ok" targetState="creditCardsWellcome" /> <transition id="initialStep.error" targetState="finalNotOk" /> </transitions> </state> <!-- 欢迎页面状态。type="page"表示是页面状态, typeIdInfo="jar:///xui/firstStep.xui"表示页面内容对应的XML。--> <xuiState id="creditCardsWellcome" type="page" typeIdInfo="jar:///xui/firstStep.xui"> <!-- 根据页面上出发的事件,转到下一个状态creditHistoryOpState。 页面上会使用StateChangeAction,发送"history"事件 --> <transitions> <transition context="creditCardsWellcome_history_Ctx" id="creditCardsWellcome.history" targetState="creditHistoryOpState" /> </transitions> </xuiState> <!-- 业务状态,执行相应的业务操作, type="operation"表示这个状态是一个业务操作--> <state id="creditHistoryOpState" type="operation"> <entryActions> <!-- 执行相应的业务操作, operationName="creditHistoryOp" 表示要执行的业务操作的ID--> <executeOperationAct id="creditHistoryAct" linkContextTo="processor" operationName="creditHistoryOp" /> </entryActions> <!-- 根据业务操作的返回结果,转移到XUI页面流程的下一个状态--> <transitions> <transition id="creditHistoryAct.accountExists" targetState="creditCardsPage" /> <transition id="creditHistoryAct.newAccount" targetState="financialInfoState" /> <transition id="creditHistoryAct.error" targetState="finalNotOk" /> </transitions> </state> <!-- 子流程状态,这是一个特殊的页面状态--> <xuiState id="financialInfoState"> <entryActions> <!-- executeXuiSubflowAct表示执行一个子页面流程, processor="financialInfoProc"表示子页面流程的ID, XUI富客户端页面流程会根据ID并且执行子页面流程--> <executeXuiSubflowAct id="initialStep" processor="financialInfoProc" /> </entryActions> <!-- 根据子页面流程的结果,XUI富客户端页面流程执行下一个流程状态 --> <transitions> <transition id="initialStep.ok" outputMapFmt="financialInfoToCreditApplFormat" targetState="creditCardsPage" /> <transition id="initialStep.notOK" outputMapFmt="errorMessagesMapper" targetState="finalNotOK" /> <transition id="initialStep.canceled" targetState="creditCardsWellcome" /> </transitions> </xuiState> <!-- 选择信用卡类型页面状态,type="page"表示这个状态是页面, typeIdInfo="jar:///xui/chooseCard.xui"表示页面内容。--> <xuiState id="creditCardsPage" type="page" typeIdInfo="jar:///xui/chooseCard.xui"> <transitions> <!-- 如果用户信用卡选择成功, 转到流程的下一个状态creditCardConfirmationPage --> <transition id="creditCardsPage.ok" targetState="creditCardConfirmationPage" /> <!-- 如果用户取消了信用卡申请,则转到流程的下一个状态finalOK --> <transition id="creditCardsPage.cancel" targetState="creditCardsWellcome" /> </transitions> </xuiState> <!-- 信用卡确认信息页面,type="page"表示这个状态是页面, typeIdInfo="jar:///xui/confirm.xui"表示页面内容 --> <xuiState id="creditCardConfirmationPage" type="page" typeIdInfo="jar:///xui/confirm.xui"> <transitions> <!-- 如果用户确认了信用卡信息, 则转移到下一个流程状态creditCardProcessingOpState。 --> <transition id="creditCardConfirmationPage.ok" targetState="creditCardProcessingOpState" /> <!-- 如果用户取消了信用卡申请,则转到流程的下一个状态finalOK --> <transition id="creditCardConfirmationPage.cancel" targetState="finalOk" /> </transitions> </xuiState> <!-- 信用卡处理逻辑状态 --> <state id="creditCardProcessingOpState"> <entryActions> <!-- 执行业务操作,operationName="creditCardProcessingOp"表示业务操作的ID --> <executeOperationAct id="creditCardProcAct" linkContextTo="processor" operationName="creditCardProcessingOp" /> </entryActions> <transitions> <!-- 如果信用卡处理申请提交成功,则转移到下一个状态finalOk。 --> <transition id="creditCardProcAct.ok" targetState="finalOk" /> <!-- 如果信用卡处理申请提交失败,则转移到下一个状态finalNotOK。 --> <transition id="creditCardProcAct.error" targetState="finalNotOk" /> </transitions> </state> <!-- 申请成功页面。type="final"表示这个状态是流程的结束状态, finalPage="jar:///xui/success.xui"表示页面内容 --> <xuiState id="finalOk" type="final" typeIdInfo="ok" finalPage="jar:///xui/success.xui" /> <!-- 申请错误页面。type="final"表示这个状态是流程的结束状态, finalPage="jar:///xui/error.xui"表示错误页面内容 --> <xuiState id="finalNotOk" type="final" typeIdInfo="error" finalPage="jar:///xui/error.xui" /> </xuiProcessor> |
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |