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 :

dates et messages d'erreurs


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 54
    Par défaut dates et messages d'erreurs
    Bonjour à tous,
    voilà ma situation, j'ai dans ma jsp un formulaire et une table qui affiches des éléments de ma bdd.
    Le formulaire me permet d'ajouter, supprimer ou modifier ces éléments dont parmis eux des dates (date_debut, date_fin). Je voudrai renvoyer un message d'erreur si la date de debut est supérieure à celle de fin.
    On m'a orienté sur ActionMessage.
    Le problème est que je n'arrive pas à mettre en place correctement ma condition...(oui ça craint...)
    alors voila ce que j'ai :
    dans mon FormBean :
    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
    public ActionErrors validate(ActionMapping mapping,
    			HttpServletRequest request) {
    		ActionErrors errors =  super.validate(mapping, request);
     
     
    		DateTime start = new DateTime(getDate_debut());
    		DateTime end = new DateTime(getDate_fin());
     
    		Period period = new Period(start, end);
    		if ((period.getYears() <0) ||(period.getMonths()<0)||(period.getDays()<0))
    		{
     
    	ActionMessage messags = new ActionMessage("error.seance.date.compare", "resources.error") ;
    		errors.add(ActionMessages.GLOBAL_MESSAGE ,messags) ;}
     
    		return errors ;
     
    	}
    Dans ce cas là, quelle que soit la date il ne me renvoit rien.....

    some help please??
    merci

    ps : j'aurai du mettre ce post dans celui de waiter_53, je m'en excuse...

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 54
    Par défaut
    Bon j'ai trouvé la solution (bien que tout le monde semble n'en avoir rien a carré^^)

    alors tout se passe dans le Form, vu qu'il s'agit d'une simple vérif de champs, on peu le mettre aussi ds l'action mais ce n'est pas un traitement métier a part entiere .
    donc dans mon ptit SeanceForm, on va surcharger la methode validate, et mon erreur venait tout simplement du fait que je ne peuplais pas mes variables!!! donc voila ce que ça donne
    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    @Override
    	public ActionErrors validate(ActionMapping mapping,
    			HttpServletRequest request) {
    		ActionErrors errors =  super.validate(mapping, request);
     
    		SimpleDateFormat formatup = new SimpleDateFormat ("dd/MM/yyyy");
     
     
    		try{
    			//on vérifie que la date ne soit pas vide
    			if(getDate_debutS() != null && getDate_debutS() !="")
    				setDate_debut(formatup.parse(getDate_debutS())) ;
     
    			if(getDate_finS() != null && getDate_finS() !="")
    				setDate_fin(formatup.parse(getDate_finS())) ;
     
    			ActionMessage messags = new ActionMessage("error.seance.date.compare", "resources.error") ;
    			if (date_debut.after(date_fin))//si date_debut supérieure à date_fin
    			{
    				errors.add(ActionMessages.GLOBAL_MESSAGE ,messags) ;//on insére le message error.seance.date.compare
     
    				}
     
    		}
    		catch (Exception e) {
    			// TODO: handle exception
    		}
     
     
     
     
     
    		return errors ;
     
    	}
    jpense que mine de rien ça pourra aider!!
    peace

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 54
    Par défaut
    tient j'en profite pour poser une autre question mais qui releve plus du sql et pour pas polluer avec un nouveau sujet je le met ici :

    J'ai une jsp qui comporte un formulaire à deux champs(login /mdp)
    quand je clique sur valider je souhaite vérifier que ce login et mdp existe bien dans ma table et le cas échéant retourner une erreur sinon rediriger vers une autre jsp.



    donc voila ce que j'ai dans mon action :

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    public class LoginFormAction extends Action {
     
    @Override
    public ActionForward execute(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws Exception {
     
    ActionForward froward = mapping.findForward("redirection") ;
     
    DaoManager daoManager = ConfigDao.getDaoManager();
    try {
    daoManager.startTransaction();
     
    ILoginDao loginDao = (ILoginDao) daoManager.getDao(ILoginDao.class);
     
     
     
    // Récupération du formulaire
    LoginForm loginForm = (LoginForm) form;
    //mon loginForm contient bien le login et mdp saisis
    LoginBean loginBean = loginDao.getuser(loginForm.getLogin(), 
    //loginBean est null!probleme de ma Dao donc de mon LoginSql
     
    if (loginBean == null)
    {
    ActionMessages errors = new ActionMessages() ;
    ActionMessage messags = new ActionMessage("error.login.user.compare", "resources.error") ;
    errors.add(ActionMessages.GLOBAL_MESSAGE ,messags) ;
     
    this.addErrors(request, errors) ;
    froward = mapping.getInputForward() ;
    }
     
     
    }
    catch (Exception e) {
    throw e;
    }
    finally {
    daoManager.endTransaction();
    }
    return froward ;
    }
    }
    et voici mon LoginSql
    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
     
     
    <sqlMap namespace="Login">
     
    <typeAlias alias="Loginbean" type="com.ogmyos.bean.LoginBean"/>
     
    <resultMap id="loginResult" class="Loginbean">
    <result property="login" column="login_user" />
    <result property="mdp" column="mdp_user" />
     
    </resultMap>
     
     
     
    <select id="getuser" resultMap="loginResult">
    SELECT login_user, mdp_user
    FROM user
    WHERE login_user = #login# AND mdp_user=#mdp#
     
     
     
    </select>
     
    </sqlMap>

    dans mon form je récupére bien le login et le mot de passe saissi, mais mon bean est null. donc mauvaise requete sql et vu que je suis pas bon....
    help???...please??...

Discussions similaires

  1. Faire un controle avec message d'erreur sur date
    Par manue514 dans le forum Débuter
    Réponses: 8
    Dernier message: 04/05/2009, 17h08
  2. Retourner Date et afficher un message d'erreur
    Par toinou4100 dans le forum Débuter
    Réponses: 2
    Dernier message: 29/11/2008, 18h35
  3. Réponses: 2
    Dernier message: 19/03/2008, 18h11
  4. Réponses: 2
    Dernier message: 19/09/2007, 14h51
  5. WSS 3 : Message d'erreur sur colonne date calculée
    Par ilfaitbeau dans le forum SharePoint
    Réponses: 1
    Dernier message: 30/08/2007, 09h50

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