Bonjour,
Je souhaite faire une page de connexion avec un login et un mot de passe dans Netbeans avec le Visual Web Pack.
La page est simple :
- 1 champ "text field" nommé "login" pour entrer le login
- 1 champ "password"
- 1 bouton "connecter" qui renvoi sur une autre page.
Je souhaite vérifier si le login et le mot de passe correspondent bien dans une table de ma base. Table logname / colonnes : log_nom et log_pass.
La requete dans le "lognameRowSet" est la suivante :
Le data provider s'appelle lognameDataProvider.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT ALL logname.log_nom, logname.log_pass FROM logname WHERE logname.log_nom = ?
Le code sur le bouton est le suivant :
LNetbeans ne retourne aucune erreur mais à l'exécution, Tomcat retourne une erreur 500 qui apparemment est du à un probleme de requete sur la base.
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 public String connecter_action() { String req = "SELECT log_nom, log_pass FROM logname"; String utilisateur = login.getText().toString(); String motpasse = password.getText().toString(); try { // 1 iere solution : création de la requete a la volée getSessionBean1().getLognameRowSet().setCommand (req + " WHERE name = " + utilisateur.toString() ); // fin de la premiere solution // 2 ieme solution : =? de la requete est remplacé par login.getText() avec la fonction setObject() getSessionBean1().getLognameRowSet().setObject(1, login.getText()); //fin de la 2 ieme solution } catch (Exception e) { error("Cannot switch to person " + lognameDataProvider.getValue("logname.log_nom")); log("Cannot switch to person " + lognameDataProvider.getValue("logname.log_pass"), e); } if (utilisateur.equals(lognameDataProvider.getValue("logname.log_nom"))) { if (utilisateur.equals(lognameDataProvider.getValue("logname.log_pass"))) { return "accepte"; } } return "erreur"; }
J'ai lu et réalisé (ça fonctionne) les tutoriels concernant les accès aux données d'une base mais ils se font tous avec des listes déroulantes, rien sur une vérification à partir de champs.
Avez-vous une idée d'où pourrait se trouver l'erreur ou comment faire ce genre de vérification ?
L'accès à la base fonctionne très bien, j'ai vérifié en faisant des requetes avec des objets "table" de VWP.
Merci
Partager