在Spring Webflow中,我需要实现一个导航栏,该导航栏将允许“后退”或将流程恢复到先前的视图之一。
例如 :
对于此示例,我想从视图4页面返回视图2。
最佳答案
这取决于您如何执行此操作。如果您在一个流程中执行此操作,则将具有以下内容:
<view-state id="loginView" view="login.jsp">
<action-state bean="someBean" method="login" />
<transition on="success" to="informationView" />
</view-state>
<view-state id="informationView" view="information.jsp">
<render-actions>
<action-state bean="someBean" method="retrieveInformation" />
</render-actions>
<transition on="forward" to="messageView" />
<transition on="back" to="loginView" />
</view-state>
<view-state id="messageView" view="message.jsp">
<render-actions>
<action-state bean="someBean" method="retrieveMessage" />
</render-actions>
<transition on="forward" to="closeView" />
<transition on="back" to="informationView" />
</view-state>
<view-state id="closeView" view="logout.jsp">
<transition on="jumpBack" to="informationView" />
</view-state>
“closeView”上的“jumpBack”转换将使您跳回到视图状态2,这是您的信息视图。
对于子流,这很棘手。您需要对其进行链接:调用一个子流,并且如果有事件表明您需要以特定状态结束流,请立即执行操作。
例如,假设您的流程链是login-> information-> message-> close。
在结束时,结束状态将为“returnToInformation”。
消息流具有从=“returnToInformation”到=“returnToInformation”的过渡。
“returnToInformation”也是消息流中的结束状态。
然后,信息流具有从=“returnToInformation”到=“displayInformationPage”的过渡,然后该过渡将重新显示信息页面。