0

SpringWebFlowでのフィールド検証

SpringWebFlowのコントローラー内でフィールド検証を実行しようとしています。コード内に次のコードがあり、エラーが発生した場合はうまく機能しますが、エラーが発生しない場合は何を返しますか?私はこれを正しい理由でやっていますか?

私のコントローラーのコード:

public Event validateVisit(Visit visit, MessageContext messageContext)
{
        String temp = visit.getType_of_visit() + "";
        if(temp.equals(""))
        {   
            MessageBuilder errorMessageBuilder = new MessageBuilder().error();
            errorMessageBuilder.source("type_of_visit");
            errorMessageBuilder.code("type_of_visit_missing");      
            messageContext.addMessage(errorMessageBuilder.build());
            return new EventFactorySupport().error(this);
        }
}

これが私のflow.xmlです

<view-state id="SchoolVisitReport" view="SchoolVisitReport.jsp" model="visit">
            <transition on="submit" to="addVisit">
                <evaluate expression="flowActions.validateVisit(visit, messageContext)"/>
            </transition>
            <transition on="cancel" to="endState"/>
    </view-state>

<decision-state id="addVisit">
       <if test="flowActions.addVisit(visit)" then="endState" else="errorState" />
 </decision-state>

私がこれを正しく行っているかどうかを教えてください..エラーがない場合は動作しません。

4

1 に答える 1

2

return new EventFactorySupport()。success(this);を使用すると思います。エラーが発生しなかったことを表します。

于 2012-08-29T23:55:50.383 に答える