Struts <html:text>テキストボックスの例

Struts テキストボックスの例

このStrutsテキストボックスの例をダウンロード–Struts-TextBox-Example.zip

このStrutsの例では、Struts<html:text>タグを使用してHTMLテキストボックス入力フィールドを作成する方法、ActionFormを使用してテキストボックスを検証する方法、ActionErrorsを使用してエラーメッセージを表示する方法を学習します。 JSPページのメッセージリソース。

1. フォルダー構造

これは、Mavenによって作成される最終的なプロジェクト構造です。 対応するフォルダーを作成してください。

Struts-text-box-folder

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つの方法で表示できます。

  1. すべてのエラーメッセージを表示する

    
    
  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
  

アクセスする

Struts-text-box-example1

ユーザーがテキストボックスに入力せずに送信ボタンを押しなかった場合、エラーメッセージが表示されます。

Struts-text-box-example2

ユーザーがテキストボックスに入力し、送信ボタンを押した場合。

Struts-text-box-example3

テキストボックスの入力値をウェルカムページに渡し、表示します。

Struts-text-box-example4