2011-06-22 12 views
0

私はSpring WebFlowアプリケーションのサンプルをビルドしており、以下のシナリオをどのように処理するかについていくつかの情報を得たいと考えていました。Spring WebFlow、検証およびモデル

私は2ページあり、最初のページはユーザーがデータを入力するフォームで、2ページ目はユーザーが前のページに入力したデータのみを表示します。最初のページには「廃棄」と「続行」リンクがあり、2番目のページには編集リンクがあり、ユーザーは最初の画面に移動してデータを編集できます。

私がテストしているシナリオは、ユーザーがデータを入力し、継続リンクにヒットし、バリデーター(Spring/WebFlowバリデーター)が実行され、2番目のページがデータ(正しいデータ)と共に表示されます。ユーザーが編集リンクをクリックし、最初のページのフィールドを変更し、続行リンクにヒットし、バリデータが実行され、エラーメッセージ(たとえば、ユーザーがモデルのStringとして定義されている電子メールフィールドに無効な電子メールアドレスを入力したオブジェクト)が同じページ(最初のページ)に表示されます。これで、ユーザーは破棄リンクをクリックし、データが表示される第2ページに移動します。最初のページの検証が失敗したため、表示されたデータが正しいものではありません(無効な電子メールアドレスが表示されます)。

データ/モデルがどこにも保存されていないため、ユーザーが破棄リンクにヒットしたときに、古いデータ(正しいデータ)を表示するのに役立つ人がいるか心配です。

+0

フローXMLを投稿できますか? – David

答えて

0

モデルのビューステートで、bind="true"(デフォルト)で遷移すると、そのスナップショットのモデルオブジェクトが変更されます。つまり、一度「続行」すると、オブジェクトが更新されたことになります。

ユーザーを追跡して以前のスナップショットに戻すことができるかどうかわかりません。そうでない場合は、 "バックアップ"オブジェクトを保持し、手動で "破棄"するコードにそのオブジェクトを復元する必要があります。

関連する問題