IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 1 Java Discussion :

réaliser des contrôles sur le formulaire


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 172
    Par défaut réaliser des contrôles sur le formulaire
    Bonjour tout le monde.

    Actuellement je débute struts et je voudrais réaliser des contrôles sur des formulaires.

    Pour l'instant j'ai codé dans la servlet LogonForm la methode validate qui permet de réaliser des contrôles.

    Je vous donne la methode validate.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     public ActionErrors validate(ActionMapping mapping,HttpServletRequest request)
    	 {
    		ActionErrors errors=new ActionErrors(); 
    		if((this.getUsername().length()>0) && (this.getPassword().length()<3))
    		{
    			errors.add("Username", new ActionError("error.index.username"));
    			errors.add("Password", new ActionError("error.index.password"));
    		}
    		return errors;
    	 }
    Je sais qu'il faut que je touche au fichier struts-config mais je ne sais où appeler la methode validate.

    Je vous donne mon fichier struts-config.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
                                   "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
    <struts-config>
     <data-sources/>
     
     <form-beans type="org.apache.struts.action.ActionFormBean">
     <form-bean name="Formulaire" type="servlet.Logonform"/>
     </form-beans>
     
     <global-exceptions/>
     <global-forwards/>
     
     <action-mappings type="org.apache.struts.action.ActionMapping">
        <action path="/admin/removeMapping" type="org.apache.struts.actions.RemoveMappingAction" />
        <action path="/dologin" parameter="" input="/index.jsp" scope="request" name="Formulaire" type="servlet.Logonaction">
        <forward name="succes" path="/index.jsp" redirect="false" />
        <forward name="echec" path="/login.jsp" redirect="false" />
        </action>
        </action-mappings>
     
     <controller/>
    </struts-config>
    Je vous remercie de votre aide.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 265
    Par défaut
    salut,
    je crois bien que la méthode validate est appelée automatiquement à la validation du formulaire et que donc tu n'as pas a rajouter de configuration dans struts-config - a confirmer -

  3. #3
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 23
    Par défaut
    en théorie, je sais qu'ac Struts 1.2.8, si ton mapping ac ton FormBean est bien fait (du moins, il a l'air), ta méthode validate est appelée automatiquement (tout comme la fonction reset) lorsque tu réalises ton action. Pas besoin de la mappé où que ce soit. Je confirme donc ce que disait jln13 !

    Cependant, je déconseille toujours ces méthodes. Afin de minimiser les appels Client-Server et donc d'optimiser ton programme, plutot utiliser un script javascript pour réaliser ces controles directement chez le client. Mais sous Struts, j't'avoue qu'c'est pas une mince affaire !

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 172
    Par défaut
    Je vous remercie mais je viens de tester mais il forward lorsque je clique sur le boutton envoyer.

    J'utilise la version struts 1.2.7

    Je vous remercie de votre aide

  5. #5
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 23
    Par défaut
    s'il forward vers "index.jsp" c'est que l'erreur vient de ton ActionBean !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 172
    Par défaut
    Je te remercie de ton aide mais l'ActionBean se situe où ?

    J'ai modifié la methode actionforward de la servlet Logonaction.

    voici les dernieres modifications.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    public ActionForward execute (ActionMapping mapping,ActionForm form, HttpServletRequest Request, HttpServletResponse response)
    {
    	String username=((Logonform)form).getUsername();
    	String password=((Logonform)form).getPassword();
    	((Logonform)form).validate(mapping,Request);
    	if(Logon.checkUser(username, password))
    	{
     
    		Userlist userList= new Userlist();
    	 	Vector <User> users = userList.getUsers() ;
    	 	Request.setAttribute("users",users);
    		    return mapping.findForward("succes");
    	}
    	else
    	{
    			return mapping.findForward("echec");
    	}
     
    }
    Malgré ces modifications ca me forward toujours.

    Je vus remercie de votre aide

  7. #7
    Membre averti
    Inscrit en
    Mars 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 23
    Par défaut
    là t'as plutot un pb dans ta méthode checkuser(username, password) ! tu ne passes donc jamais dans le else ?

    et pourquoi tu mets redirect="false" dans les forward de ton struts-config.xml ?

    ne te serais tu pas aussi trompé dans l'attribut input de la balise action-mapping ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] C# Comment accéder aux propriétés des contrôle sur un autre formulaire
    Par Claude_Azoulai dans le forum Visual Studio
    Réponses: 0
    Dernier message: 03/04/2013, 17h04
  2. [AC-2010] Créer des contrôles sur un formulaire existant
    Par gilweb dans le forum IHM
    Réponses: 4
    Dernier message: 11/10/2012, 19h57
  3. [C#]Placement des elements sur un formulaire
    Par hawk² dans le forum Windows Forms
    Réponses: 5
    Dernier message: 19/08/2006, 15h50
  4. Réponses: 1
    Dernier message: 15/09/2005, 11h59
  5. pb avec des clés sur un formulaire
    Par marie253 dans le forum Bases de données
    Réponses: 7
    Dernier message: 17/06/2004, 13h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo