1

spring web-flow 2 で以下のフローを書きましたが、無効なコンテンツとしてエラーが出ます。

<on-entry>
<decision-state="check">
<if test="some condition" then="x state" else="y state"/>
</decision-state>
</on-entry>

<view-state id="x state">
<evaluate expression="...."/>
</view-state>

タグがエントリ状態の場合に使用する代替手段はありますか? エントリー時に意思決定状態を使用できますか?

条件が真の場合、状態でメソッドを評価する必要があります<on-entry>。それ以外の場合は、状態で評価されるべきではありません<on-entry>

4

2 に答える 2

7

まず、<on-entry>州内でのみ意味があります。
第二に、内部の状態を定義することはできません<on-entry>

あなたがすべきことはあなたを定義することだけでdecision-stateあり、webflowはそれをエントリポイントとして自動的に使用します。

<decision-state id="check">
    <if test="some condition" then="xState" else="yState"/>
</decision-state>

<view-state id="xState">
    <evaluate expression="...."/>
</view-state>

<view-state id="yState">
    <evaluate expression="...."/>
</view-state>

このフローを見てみましょう。エントリポイントは明らかcheckにです。これは、両方x statey stateが呼び出されるため、決定状態です。

したがって、フローチャートは

             x状態
          /
チェック
          \
             y状態

です。これは、他に方法がないためです。そして私はこれがあなたが望む行動だと思います

[編集]これは、2つのアクション状態の例です。

<decision-state id="check">
    <if test="some condition" then="xState" else="yState"/>
</decision-state>

<action-state id="xState">
    <evaluate expression="expr1"/>
    <transition on="success" to="zState"/>
</action-state>

<action-state id="ySate">
    <evaluate expression="expr2"/>
    <transition on="success" to="zState"/>
</action-state>

<view-state id="zState">
</view-state>


              xアクション状態
          /(expr1を評価)\
ビュー状態を確認
          \ /
              yアクション状態
            (expr2を評価)    

于 2012-12-18T18:34:47.860 に答える