Formulaire Recalcitrant ...

Signaler
Messages postés
1
Date d'inscription
mercredi 2 décembre 2020
Statut
Membre
Dernière intervention
2 décembre 2020
-
Messages postés
5354
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
18 janvier 2021
-
Bonsoir !
Je suis bloquée sur mon code, je vous explique :
J'ai un formulaire, qui permet de créer des utilisateurs pour les stocker dans une base de données.
ça, ça marche.
J'ai voulu ajouter des conditions (le pseudo et l'email ne peuvent etre déja existants dans la base). Là ça se complique : avec mon code, pas de problème pour avoir les messages d'erreurs en cas de pseudo ou d'email existant.... MAIS je ne peux plus créer d'utilisateur, ça me renvoie un bllException.

Voici mon code avec les conditions :

try {   
   u = um.findbypseudo(pseudo);
   if(u != null) {
    erreurs.add("ce pseudo est déja utilisé");
   }
   u = um.findbyemail(email);
   if(u != null) {
    erreurs.add("cet email existe déja dans la base de données");
   }
   else {
    um.ajouter(u);
   }
   
  } catch (BllException e) {
   String erreur = e.getMessage();
   request.setAttribute("erreurs", erreur);
   System.out.println(erreur);
   e.getStackTrace();
  }
  
  
  
 if(erreurs.size()>0) {
   request.setAttribute("erreurs", erreurs);
   rd.forward(request, response);
   
  }


C'est si raté que ça ? ><

Merci mille fois pour votre aide

1 réponse

Messages postés
5354
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
18 janvier 2021
102
Salut,


Je ne sais pas ce que font les méthodes findbypseudo et findbyemail pour générer une exception mais en gros par rapport à ton pb d'ajout (au plus simple) :
   u = um.findbypseudo(pseudo);
   if(u != null) {
    erreurs.add("ce pseudo est déja utilisé");
   }

   u = um.findbyemail(email);
   if(u != null) {
    erreurs.add("cet email existe déja dans la base de données");
   }

   if(erreurs.isEmpty()) {
    um.ajouter(u);
   }