【问题标题】:Spring WebFlow can I understand the previous stateSpring WebFlow 可以理解之前的状态吗
【发布时间】:2016-05-17 19:45:09
【问题描述】:

我有一个简单的 Spring WebFlow,它有几个状态。

当你到达某个状态时,是否有可能知道哪个是前一个状态?

我需要这个,因为我想检测用户何时刷新页面,所以在这种情况下,我以前的状态将与我当前的状态相同。

【问题讨论】:

  • 你能更精确一点吗?您是在谈论流程还是同一流程中的状态?
  • 同一流程中的状态,我希望能够了解我从哪个状态进入当前状态

标签: spring spring-webflow


【解决方案1】:

你可以像这样设置一个变量:

<var name="comingFrom" class="java.lang.String"/>

<on-start>
    <set name="comingFrom" value="''"/>
<on-start>

<state id="state1">
    <transition on="transition1" to="current">
        <set name="comingFrom" value="'state1'"/>
    </transition>
</state>

<state id="current">
    /* do what you want in your state with "comingFrom" */
    <transition on="transistion2">
        <set name="comingFrom" value="'current'"/>
    </transition>
</state>

但这需要您在每次进入“当前”状态的转换时设置此变量。

[编辑] 决策状态示例:

<decision-state id="decisionState">
    <if test="comginFrom != 'current'" then="state1" else="state2"/>
</decision-state>

【讨论】:

  • 是否可以在“当前”状态下编写类似 if 语句的内容,以便能够理解“comingFrom”变量的值并根据“comingForm”变量的值进行特定事务跨度>
  • 您可以使用决策状态并在其中包含 if 语句
  • 添加决策状态示例
猜你喜欢
  • 2012-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-26
  • 2014-11-25
  • 2016-11-08
  • 1970-01-01
  • 2012-08-13
相关资源
最近更新 更多