Struts テキストボックスの例
このStrutsテキストボックスの例をダウンロード–Struts-TextBox-Example.zip
このStrutsの例では、Struts<html:text>タグを使用してHTMLテキストボックス入力フィールドを作成する方法、ActionFormを使用してテキストボックスを検証する方法、ActionErrorsを使用してエラーメッセージを表示する方法を学習します。 JSPページのメッセージリソース。
1. フォルダー構造
これは、Mavenによって作成される最終的なプロジェクト構造です。 対応するフォルダーを作成してください。
2. アクションクラス
Actionクラスを作成し、リクエストを転送するだけです。
UserAction.java
package com.example.common.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"); } }
3. プロパティファイル
プロパティファイルを作成し、エラーとラベルメッセージを宣言します。
Common.properties
#common module error message error.common.name.required = Name is required. #common module label message label.common.name = UserName label.common.button.submit = Submit label.common.button.reset = Reset
4. ActionForm
ActionFormを作成し、ユーザー名を受け入れて、validate()メソッドで検証します。 ユーザー名が空の場合は、上記のプロパティファイルからエラーメッセージを取得し、ActionErrorsのキー「common.name.err」として追加します。後でこの名前「common.name.err」を使用して、JSPにエラーメッセージを表示します。 。
UserForm.java
package com.example.common.form; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionMessage; public class UserForm extends ActionForm{ String username; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } @Override public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { ActionErrors errors = new ActionErrors(); if( getUsername() == null || ("".equals(getUsername()))) { errors.add("common.name.err", new ActionMessage("error.common.name.required")); } return errors; } @Override public void reset(ActionMapping mapping, HttpServletRequest request) { // reset properties username = ""; } }
5. JSPページ
StrutsのHTMLタグ<html:text>を使用して、HTMLテキストボックス入力フィールドを作成します。 ラベルメッセージは上記のプロパティファイルで宣言されています。<bean:message key=”label_name” />を介して直接取得できます。
エラーメッセージは2つの方法で表示できます。
-
すべてのエラーメッセージを表示する
-
ActionErrorsで宣言したエラーメッセージキーを指定して、指定したエラーメッセージを表示します。
login.jsp
Struts html:text example
:
テキストボックスの入力を表示します。
welcome.jsp
Welcome
6. struts-config.xml
Struts構成ファイルを作成し、すべて一緒にリンクします。
アクションタグの属性:
-
path =アクセスするWebパス
-
タイプ=アクションクラス
-
名前=アクションフォーム
-
validate = trueを指定すると、ActionFormはフォーム検証のためにvalidate()メソッドを実行します
-
入力=検証が偽の場合、どこに転送しますか?
Strutsにカスタムリソースメッセージを認識させるには、プロパティファイルをstruts-config.xmlファイルに含める必要があります。
7. web.xml
最後のステップでは、Strutフレームワーク統合用のweb.xmlを作成します。
Maven Struts Examples action org.apache.struts.action.ActionServlet config /WEB-INF/struts-config.xml 1 action *.do
アクセスする
ユーザーがテキストボックスに入力せずに送信ボタンを押しなかった場合、エラーメッセージが表示されます。
ユーザーがテキストボックスに入力し、送信ボタンを押した場合。
テキストボックスの入力値をウェルカムページに渡し、表示します。