Strutsバリデータフレームワークの例
Strutsバリデータフレームワークは、検証をより簡単に実行し、保守性を高めるための多くの汎用検証メソッドを提供します。 Strutsバリデーターでは、ActionForm validate()メソッドの代わりに、検証関数をxmlファイルに宣言する必要があります。これにより、Struts検証をより標準化、再利用可能、重複の少ないコードにすることができます。
この例をダウンロード–Struts-Validator-Example.zip
Struts Validatorフレームワークの使用
Struts Validatorフレームワークを使用するためのクイックガイドを次に示します。
1. 検証プラグイン
Strutsバリデータプラグインを使用するには、「ValidatorPlugIn」クラスをstruts-config.xmlファイルに含める必要があります。
......
「validator-rules.xml」ファイルには、すべての一般的なバリデーター名が含まれています。このファイルは、Struts配布ライブラリで取得できます(このファイルを自分で作成しないでください)。 また、「validator-user.xml」には、フォームフィールドの検証がすべて含まれています。
2. 検証フォーム
フォームBeanでバリデータフレームワークを使用する必要がある場合は、ActionFormではなくValidatorFormを拡張する必要があります。
import org.apache.struts.validator.ValidatorForm; public class UserForm extends ValidatorForm{ ..
3. validator-user.xml
userForm Bean、メールプロパティ、および「必須」および「メール」バリデータをメールプロパティに添付します。 「必須」バリデータは、フィールドが空白でないことを確認し、「電子メール」バリデータを使用して正しい電子メール形式を確認します。 「必須」と「電子メール」の両方のバリデーターが「validator-rules.xml」ファイルで宣言されています。
Struts Validatorフレームワークの例
Strutsバリデータフレームワークについて理解する最良の方法は、簡単なアプリケーションを作成し、検証作業を順を追って説明することです。 以下は、Strutsバリデータフレームワークを使用してユーザー名、パスワード、メールを確認する簡単なユーザー登録フォームです。
1. アクション
アクションクラス、成功リクエストを転送します。
UserAction.java
package com.example.user.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; public class UserAction extends Action{ public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { return mapping.findForward("success"); } }
2. ユーザーフォーム
UserFormはValidatorFormクラスを拡張します。
UserForm.java
package com.example.user.form; import org.apache.struts.validator.ValidatorForm; public class UserForm extends ValidatorForm{ String username; String pwd; String pwd2; String email; //getter and setter methods }
3. プロパティファイル
プロパティファイルには、すべてのラベルとエラーメッセージが含まれています。
user.properties
#user module label message label.user.name = Name label.user.username = UserName label.user.pwd = Password label.user.pwd2 = Confirm Password label.user.email = Email label.user.button.submit = Submit #Error message err.user.username.required = Username is required.
err.user.username.length = Username length should be between {0} and {1}.
err.user.username.invalid = Username is invalid , it should be a-z, A-Z, 0-9, dash "-" or underscore "_".
err.user.pwd.required = Password is required.
err.user.pwd.length = Password length should be between {0} and {1}.
err.user.pwd.invalid = Password is invalid , it should be a-z, A-Z, 0-9.
err.user.pwd2.notmatch = Confirm password is not match.
err.user.email.required = Email is required.
err.user.email.invalid = Email address is invalid.
4. ページを表示
すべてを作成する単純なjspページにはテキストフィールドが必要で、単純なありがとうページ
RegisterUser.jsp
Struts - Validator Example RegisterUser.jsp User Registeration Form
+ : + : + : + : + +
ThanksYou.jsp
Struts - Validator Example Thanks you for the registration
5. Struts構成
actionを構成し、マッピングを形成し、「ValidatorPlugIn」プラグインを登録します。
struts-connfig.xml
6. validator-user.xml
userFormのユーザー名、パスワード、メールプロパティのバリデーターを定義します。
validator-user.xml
7. Demo
検証コードは、それがどのように機能するか、詳細を知りたい場合、および他の利用可能なバリデーターを知るのに十分な記述的であり、以下のリファレンスWebサイトを確認してください。
参照
Strutsバリデーターのドキュメント–http://struts.apache.org/1.2.4/userGuide/dev_validator.html