Struts2 は、フォーム処理中に発生した変換エラーと検証エラーを自動的に管理します。エラーが発生した場合、例外を発生させる代わりに INPUT 結果を返します。これにより、ユーザーはアプリケーション フローを中断することなく入力エラーを修正できます。
変換エラー
パラメータ インターセプタは、フォーム パラメータの適切なデータ型 (例: String) への変換を処理します。整数に変換します)。変換が失敗した場合、ActionContext の変換エラー マップにフィールド エラーが追加されます。
検証エラー
検証インターセプターは、アクションに定義された検証ルールを実行します。いずれかの検証基準が失敗した場合、フィールド エラーが ActionContext の fieldErrors マップに追加されます。
変換と検証の後、ワークフロー インターセプターはフィールド エラーの存在を確認します。エラーが見つかった場合は、INPUT 結果を返します。この結果には、エラー メッセージとユーザーが送信した元の値が自動的に含まれるため、ユーザーはエラーを確認して入力を修正できます。
自動エラー処理を有効にするには、次のインターセプターがカスタム スタックに正しい順序で含まれています:
ユーザーが入力した場合として定義されているフォームフィールドにアルファベット文字を入力します。整数の場合、フレームワークは値を取得するときにゼロを返します。これは、Getter メソッドが String を int フィールドに設定できないため、整数のデフォルト値 (0) を返すために発生します。
Struts2 は、変換または検証エラーは入力エラーとみなされます。代わりに、INPUT 結果を返し、ユーザーが対処できるようにフィールド エラー マップにエラー メッセージを追加します。
以上がStruts2 はフォーム処理における変換エラーと検証エラーをどのように処理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。