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 :

[ STRUTS ][ ActionError ] SAvoir s'il y a une erreur


Sujet :

Struts 1 Java

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut [ STRUTS ][ ActionError ] SAvoir s'il y a une erreur
    Bonjour,

    j'ai une classe action Lecture qui :
    affiche et initialise un formulaire

    et une classe action validation qui lors du submit :
    valide et traite l'action (creer/modifer/supprimer)

    s'il y a une erreur de saisie ou de cohérence dans le formulaire (dans la classe action validation) j'ajouter une Error (avec Action error) et je rapelle ma classe Lecture.

    Cependant ma classe Lecture a toutes les données que je veux réafficher...seulement je voudrais faire un cas spécifique en cas d'erreurs :
    si il y a une erreur => je n'itialiser rien du tout et je renvoie mon form tel quel pour que le formulaire se réaffiche avec en entete l'erreur.

    seulement voila comment et qu'est ce qu'il faut que je teste pour savoir si il y a une erreur d'ajouter?

    du genre if(actionError.getError!=null) => il y a une erreur
    je fais directement mon actionforward.

    merci de votre aide
    "Plus on fait de conneries, moins on en aura à faire...."

  2. #2
    Membre expérimenté
    Avatar de viena
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    1 071
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 071
    Points : 1 512
    Points
    1 512
    Par défaut
    la ligne de code que tu donnes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(actionError.getError!=null)
    ne fonctionne pas?
    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java
    "La liberté de tout être s'arréte là où commence celle de l'autre... Respecter l'autre, c'est préserver sa liberté d'être, de penser et de vivre"

  3. #3
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 62
    Points : 58
    Points
    58
    Par défaut
    salut, je ne suis pas sur d'avoir compris ta questions mais moi je teste mes données lors de mon submit avant d'appeler mon saveRecord () et si il y a un erreur je génère un exception comme si-dessous et ma page avec mon formulaire est réafficher avec le message d'erreur écrit en haut de ma page:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    if(error){
    throw new Exception("lbl.errormsg");}


    j'suis peut-être à côté de ta question mais ça peut tjs t'aider....

  4. #4
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut
    non en fait mon submit est deja fait
    et je fais des traitement de donnees pour vérifier les données en base
    et s'il y a une erreur je fais un actionForward vers ma classe lecture, qui va me réafficher ma page. Le pb c'est que cette classe réinitialise tout (avec les données de départ) et je voudrais ajouter un cas quand il y a une erreur (rien m'initianiliser mais garder les données pour les réafficher)
    du coup il me fallait une donnée de test ...
    "Plus on fait de conneries, moins on en aura à faire...."

  5. #5
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 62
    Points : 58
    Points
    58
    Par défaut
    donc il faut que tu sauvegardes tes données avant de les vérifier et si il y a une erreur tu les renvoies ds ton formulaire via ta classe lecture.
    c quoi ta donnée de test?

  6. #6
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut
    oui c'est ce que je veux faire...mes donn"es sont sauvegardés, mais je ne veux pas les réinitialiser (ce que va faire ma classe LEcture)
    c'est pour ca que je voulais tester l'objet ActionErrors
    j'ai vu qu'il y a une méthode

    isEmpty() => vrai s'il n'y a pas de message ActionError , false sinon

    le pb c'est que je suis en struts 1.1

    et dans la 1.2 la classe mère Action propose une méthode getErrors()
    qui renvoie l'objet ActionErrors apres j'ai juste a faire un isEmpty() dessus...
    mais struts 1.1 ne propose rien comme cela...mais y'a un moyen de faire a peu pres pareil non?
    "Plus on fait de conneries, moins on en aura à faire...."

  7. #7
    Membre régulier
    Inscrit en
    Décembre 2003
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 105
    Points : 107
    Points
    107
    Par défaut
    En struts 1.1, pour récupérer le ou les erreurs qui ont été sauvegardés dans la request il faut faire dans la classe Action (execute dans mon cas):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    ActionErrors errors = (ActionErrors) request.getAttribute(Globals.ERROR_KEY);
    if(errors!=null && !errors.isEmpty()){
     //traitement pour le cas ou il y a des erreurs
    }
    else{ 
      // traitement pour le cas où il n'y pas d'erreurs
    }
    A savoir qu'en struts 1.2, il existe la méthode getErrors() qui renvoie l'objet ActionErrors vide s'il n'y a pas d'erreurs

    Voili voila.
    Allez hop résolu
    "Plus on fait de conneries, moins on en aura à faire...."

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/07/2010, 18h44
  2. Réponses: 2
    Dernier message: 01/11/2005, 18h47
  3. [STRUTS][DOWNLOAD] download d'un fichier via une action
    Par FreshVic dans le forum Struts 1
    Réponses: 3
    Dernier message: 16/04/2004, 16h38
  4. [Struts]ActionError
    Par Ho(c)ine. dans le forum Struts 1
    Réponses: 3
    Dernier message: 16/04/2004, 11h03
  5. peut-on savoir si un champ a une sequence??
    Par e11137 dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 09/01/2004, 14h54

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