Spring 3.1 MVC で強く型付けされたモデルとフォーム オブジェクトを使用しています。これはうまく機能し、コードのオーバーヘッドを低く抑えて管理できます。ただし、ユーザーは、無効な値が表示されたときに無効な値がフィールドに残ることを好みます。特に、ユーザーは 1 つのタイプミスで長い金額を再入力する必要がありません。これは検証エラーには問題なく機能しますが、値がモデルに適合しないため、バインディング エラーには問題があります。から無効な値を取得できることはわかってFieldError
いますが、ビュー (JSP) に戻すにはどうすればよいですか?
質問する
103 次
1 に答える
0
JSP で BindingResult にアクセスできます。フィールドエラーを直接取得するだけです。次のようになります。
<forEach items="${requestScope['org.springframework.validation.BindingResult.formBean'].getFieldErrors('fieldName')}" var="fieldError">
<!-- do something with the FieldError -->
</forEach>
この場合、フォーム Bean/モデル属性/コマンド オブジェクトは「formBean」と呼ばれ、フィールドは「fieldName」と呼ばれます。fieldError を取得したら、それを使ってやりたいことを実行できます。
于 2013-02-09T02:33:50.127 に答える