1

我有一个可以返回多个事件的视图状态。对于他们中的大多数人来说,有一个我想“评估”的常用 jave 方法。我想做一些不同的事情的地方很少。但是,每个事件都会转换到不同的状态。我的 Web 流代码现在正在多次重复该方法的评估,每个适用的转换一次。当然,如果我想始终评估该方法,我可以在退出时调用它,但由于我不想在所有情况下都这样做,所以我不得不在转换调用中重复它。有没有其他方法可以做到这一点?

坦率

4

2 回答 2

0

这听起来像是一种情况,您可能会考虑将当前在流 XML 本身中编码的一些逻辑移动到对 Action POJO 的调用中。也许在退出时对 Action 的一次调用,传入流请求上下文并让 Action 方法本身(从请求参数)确定是否应该调用您的常用 Java 方法。

像这样的东西:

<view-state id="home" view="home">
  <transition on="foo" to="fooView" />
  <transition on="bar" to="barView" />
  ...
  <on-exit>
    <evaluate expression="fooAction.invokeIfNecessary(flowRequestContext)" />
  </on-exit>
</view-state>
于 2009-08-14T14:37:45.467 回答
0

过渡到决策状态评估那里,然后与 currentEvent.id 过渡到原始目标 smt,如: <decision-state id="decision"> <on-entry> <evaluate ... </on-entry> <if test="currentEvent.id=='goruntule'" then="goruntule"/> <if test="currentEvent.id=='guncelle'" then="guncelle"/> <if test="currentEvent.id=='sil'" then="sil"/> </decision-state>

于 2009-12-29T14:16:53.437 回答