需要并行调用三个webflow状态

时间:2011-10-02 07:11:17

标签: spring spring-webflow

我们在申请中遇到严重的性能问题。我们需要向后端发送三个不同的请求,当我们使用webflow并且我们逐个发送它们时,这会导致相当大的屏幕加载时间。

我们可以并行调用三种webflow状态,以便我们能够并行向后端发送三个请求吗?或者有没有办法加载我们的屏幕并稍后调用一两种方法?

我们需要从retrieveAccInsList视图状态导航到accSummary视图状态,但在我之间需要发送三个不同的Request to backenf,因为AccSumary屏幕包含3个屏幕合并,所以我需要来自三个不同位置的数据。但是是必需的解决方案< / p>

<view-state id="retrieveAccInsList">
    <transition on="openAccount" to="detailForAccountAction">
        <set name="conversationScope.selectedAccount" value="reqSearchHandler.selectedAccIns" />
        <set name="reqSearchHandler.objectToRetrieveCd" value="'RequestSearch'" />
    </transition>
</view-state>

<action-state id="detailForAccountAction">
    <evaluate expression="accountDetail.getDetailsForAccount(ClientDetailRq)"
        result="flowScope.response">
        <attribute name="name" value="detailAccountResponse" />
    </evaluate>
    <transition on="detailAccountResponse.success" to="searchNoteAction" />
    <transition on="detailAccountResponse.error" to="retrieveAccInsList" />
</action-state>

<action-state id="searchNoteAction">
    <evaluate expression="certNotesHandler.searchForNotes()"
        result="flowScope.response">
        <attribute name="name" value="noteResponse" />
    </evaluate>
    <transition on="noteResponse.success" to="searchActivityAction" />
    <transition on="noteResponse.error" to="retrieveAccInsList" />
</action-state>

<action-state id="searchActivityAction">
    <set name="reqSearchHandler.requestStatus" value="'O'" />
    <set name="reqSearchHandler.objectToRetrieveCd" value="'RequestSearch'" />
    <evaluate expression="reqSearchHandler.setparam()" />
    <evaluate expression="reqSearchHandler.searchForRequest(ReqInquireRq)"
        result="flowScope.response">
        <attribute name="name" value="activtiyResponse" />
    </evaluate>
    <transition on="activtiyResponse.success" to="accSummary" />
    <transition on="activtiyResponse.error" to="retrieveAccInsList" />
</action-state

1 个答案:

答案 0 :(得分:0)

不确定;使用Ajax。但是没有进一步的细节,很难说 - 为什么你需要“并行”调用三个webflow状态?它被称为“流”,因为它们是线性的(至少在一次对话中;我知道你可以同时激活多个流)。