Erreur null dans un code java
Résolu
futur ingenieure
Messages postés
133
Date d'inscription
Statut
Membre
Dernière intervention
-
futur ingenieure Messages postés 133 Date d'inscription Statut Membre Dernière intervention -
futur ingenieure Messages postés 133 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Erreur null dans un code java
- Code ascii - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code puk bloqué - Guide
13 réponses
while (rs.next())
{
String l1 = rs.getString("login");
String m1 = rs.getString("password");
if ((l1.equals(login))&& (m1.equals(pass)))
{ String nom = rs.getString("nom");
System.out.println(nom + "\n");
nnoomm=nom;
}
/*else { JOptionPane.showMessageDialog(null, "Valeur incorrecte de nom d'utilisateur ou/et de mot de passe. " , "Erreur",
JOptionPane.ERROR_MESSAGE);
}*/
}
nnoomm=rs.getString("nom");
Regarde bien ce qui est souligné : Juste avant, tu parcours les données, et si login ok, alors nnoomm = nom;
Sauf que ce que j'ai souligné, c'est ce qui vient après le While, sauf que rs.next() est déjà passé juste avant dans le while, donc tu es hors zone de données, donc lorsque tu fais nnoomm = rs.getString();, comme le rs est déjà hors champ, il est donc null, donc impossible de faire null.getString(); Ou alors rs.getSTring() retourne NULL.
Enlève cette ligne, et ça devrait être bon.
Le loup, solitaire et mystérieux.
{
String l1 = rs.getString("login");
String m1 = rs.getString("password");
if ((l1.equals(login))&& (m1.equals(pass)))
{ String nom = rs.getString("nom");
System.out.println(nom + "\n");
nnoomm=nom;
}
/*else { JOptionPane.showMessageDialog(null, "Valeur incorrecte de nom d'utilisateur ou/et de mot de passe. " , "Erreur",
JOptionPane.ERROR_MESSAGE);
}*/
}
nnoomm=rs.getString("nom");
Regarde bien ce qui est souligné : Juste avant, tu parcours les données, et si login ok, alors nnoomm = nom;
Sauf que ce que j'ai souligné, c'est ce qui vient après le While, sauf que rs.next() est déjà passé juste avant dans le while, donc tu es hors zone de données, donc lorsque tu fais nnoomm = rs.getString();, comme le rs est déjà hors champ, il est donc null, donc impossible de faire null.getString(); Ou alors rs.getSTring() retourne NULL.
Enlève cette ligne, et ça devrait être bon.
Le loup, solitaire et mystérieux.
Merci bien de m'avoir répondre
j'ai enlevé cette ligne vous avez raison
mais la valeur de nnoomm reste encore null dans le soap response
d'aute idée?
j'ai enlevé cette ligne vous avez raison
mais la valeur de nnoomm reste encore null dans le soap response
d'aute idée?
Sans avoir tous les éléments, pas possible.
Que donne comme résultat la reuqête select * from clients?
Juste après le While, rajouter la ligne : System.out.println("Valeur de nnoomm : "+nnoomm);
Le loup, solitaire et mystérieux.
Que donne comme résultat la reuqête select * from clients?
Juste après le While, rajouter la ligne : System.out.println("Valeur de nnoomm : "+nnoomm);
Le loup, solitaire et mystérieux.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
il s'agit d'un web service
il m'affiche dans le navigateur , Method returned
java.lang.String : "null"
et bien évidament dans la zone body de soap response rien
il m'affiche dans le navigateur , Method returned
java.lang.String : "null"
et bien évidament dans la zone body de soap response rien
Remplace le bout de code correpondant par le code suivant :
String l1 = rs.getString("login");
System.out.println("Login récupéré : "+l1);
String m1 = rs.getString("password");
System.out.println("Password récupéré : "+m1);
if ((l1.equals(login))&& (m1.equals(pass)))
{
String nom = rs.getString("nom");
System.out.println("Correspondance trouvée.");
nnoomm=nom;
}
Ca te permettra de vérifier quelles données sont extraites et vérifier par rapport au login si tu retouves les même choses.
Et rajoutes aussi des Print en début de constructeur pour vérifier que les paramètres passés ne sont pas vides.
String l1 = rs.getString("login");
System.out.println("Login récupéré : "+l1);
String m1 = rs.getString("password");
System.out.println("Password récupéré : "+m1);
if ((l1.equals(login))&& (m1.equals(pass)))
{
String nom = rs.getString("nom");
System.out.println("Correspondance trouvée.");
nnoomm=nom;
}
Ca te permettra de vérifier quelles données sont extraites et vérifier par rapport au login si tu retouves les même choses.
Et rajoutes aussi des Print en début de constructeur pour vérifier que les paramètres passés ne sont pas vides.
Ceci dit, tu ne donne pas ni l'erreur réelle, ni le résultat de l'output, rien.
C'est possible d'avoir les logs des System.out.println? ainsi que la valeur des paramètres en entrée de la fonction?
Les lignes que j'ai rajouté ne serve pas à enlever l'erreur, c'est juste pour comprendre où ça merde pour l'instant.
C'est possible d'avoir les logs des System.out.println? ainsi que la valeur des paramètres en entrée de la fonction?
Les lignes que j'ai rajouté ne serve pas à enlever l'erreur, c'est juste pour comprendre où ça merde pour l'instant.