Formulaire Recalcitrant ...

DebutanteEnJava
Messages postés
1
Date d'inscription
mercredi 2 décembre 2020
Statut
Membre
Dernière intervention
2 décembre 2020
- Modifié le 2 déc. 2020 à 20:09
Twinuts
Messages postés
5372
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
- 18 janv. 2021 à 08:26
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

Twinuts
Messages postés
5372
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
24 mai 2022
111
18 janv. 2021 à 08:26
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);
   }


0