Exemple de zone de texte Struts <html: text>

Exemple de zone de texte Struts

Téléchargez cet exemple de zone de texte Struts -Struts-TextBox-Example.zip

Dans cet exemple Struts, vous apprendrez à créer un champ de saisie de zone de texte HTML avec la balise Struts<html:text>, à valider la zone de texte avecActionForm, à afficher le message d'erreur avecActionErrors, et aussi ressource de message dans la page JSP.

1. Structure des dossiers

Il s'agit de la structure finale du projet créée par Maven. Veuillez créer les dossiers correspondants.

Struts-text-box-folder

2. Classe d'action

Créez une classe Action, ne faites que transmettre la demande.

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. Fichier de propriétés

Créez un fichier de propriétés et déclarez les messages d'erreur et d'étiquette.

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

Créez un ActionForm, acceptez un nom d'utilisateur et validez-le dans la méthode validate (). Si le nom d'utilisateur est vide, obtenez un message d'erreur dans le fichier de propriétés ci-dessus, et ajoutez-le comme clé «common.name.err» dans ActionErrors, plus tard utilisera ce nom «common.name.err» pour afficher le message d'erreur dans 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. Page JSP

Utilisez la balise HTML<html:text> de Struts pour créer un champ de saisie de zone de texte HTML. Le message d'étiquette est déclaré dans le fichier de propriétés ci-dessus, vous pouvez l'obtenir via<bean:message key=”label_name” /> directement.

Le message d'erreur peut s'afficher de deux manières:

  1. Afficher tous les messages d'erreur

    
    
  2. Affichez le message d'erreur spécifié en spécifiant la clé de message d'erreur déclarée dans ActionErrors.

    
    

login.jsp

Struts html:text example

:

Afficher l'entrée de la zone de texte.
welcome.jsp

    Welcome

6. struts-config.xml

Créez un fichier de configuration Struts et liez-les tous ensemble.

Dans les attributs de balise d'action:

  • path = chemin web auquel vous accédez

  • type = votre classe d'action

  • nom = votre formulaire d'action

  • validate = true entraînera ActionForm à valider () la méthode pour la validation du formulaire

  • entrée = si la validation est fausse, où transmettre?

Vous devez inclure votre fichier de propriétés dans le fichierstruts-config.xml pour informer Struts de votre message de ressource personnalisé.





    
        

    

    

        

        

            
        
    

    

7. web.xml

Dernière étape, créez un web.xml pour l'intégration du framework Strut.




  Maven Struts Examples

  
    action
    
        org.apache.struts.action.ActionServlet
    
    
        config
        
         /WEB-INF/struts-config.xml
        
    
    1
  

  
       action
       *.do
  

Y accéder

Struts-text-box-example1

Si l'utilisateur n'a pas rempli la zone de texte et appuyé sur le bouton Soumettre, il affichera un message d'erreur.

Struts-text-box-example2

Si l'utilisateur remplit la zone de texte et appuie sur le bouton Soumettre.

Struts-text-box-example3

Il transmettra la valeur d'entrée de la zone de texte à la page d'accueil et l'affichera.

Struts-text-box-example4