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

JDBC Java Discussion :

Generation d'erreur sur accès base de donnée !!!


Sujet :

JDBC Java

  1. #1
    Membre régulier
    Profil pro
    Responsable test de charge
    Inscrit en
    Février 2006
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable test de charge

    Informations forums :
    Inscription : Février 2006
    Messages : 186
    Points : 103
    Points
    103
    Par défaut Generation d'erreur sur accès base de donnée !!!
    Bonjour,

    JE developpe une application J2EE. Plus particulièrement, je réalise une servlet qui permet de s'authentifier sur un portail en corélation avec une base de donnée.

    CI dessous le code lié à ma

    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
     
    con = Connexion.getCnx();
     
    if(con != null){
    	try {
    		String rqt="select count(*) from test_utilisateur";
    		Statement stmt = null;				
    		ResultSet rs = null;
    		rs = stmt.executeQuery(rqt);
                    while(rs.next()){
    			final int nbr = rs.getInt(1);
    		}
    	} catch (SQLException e) {
    	}finally{
    		Connexion.closeCnx(con);
    	}				
    }
    En vérifiant pas à pas, la connection à la base de donnée est établie, l'entrée dans le try est possibme mais l'utilisation des requêtes est génératrice d'erreurs.

    CI dessous l'erreur remontée :
    java.lang.NullPointerException
    com.samir.servlet.UserAuthentification.checkUtilisateur(UserAuthentification.java:82)
    com.samir.servlet.UserAuthentification.main(UserAuthentification.java:45)
    com.samir.servlet.UserAuthentification.doGet(UserAuthentification.java:60)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    Quelqu'un a-t'il une solution à ce problème ??

  2. #2
    F2S
    F2S est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 139
    Points : 97
    Points
    97
    Par défaut
    Ajoute cette ligne ça devrait être bon...

    tu as oublié une étape...

    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
    
    if(con != null){
    	try {
    		String rqt="select count(*) from test_utilisateur";
    		Statement stmt = null;				
    		ResultSet rs = null;
                              stmt = con.createStatement();
    		rs = stmt.executeQuery(rqt);
                    while(rs.next()){
    			final int nbr = rs.getInt(1);
    		}
    	} catch (SQLException e) {
    	}finally{
    		Connexion.closeCnx(con);
    	}				
    }
    si bien que tu pourrais faire directement :

    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
    
    if(con != null){
      try {
    	String rqt="select count(*) from test_utilisateur";
    	ResultSet rs= con.createStatement().executeQuery(rqt);
    	while(rs.next()){
    		final int nbr = rs.getInt(1);
    	}
      } catch (SQLException e) {
              e.printStackTrace();
      }finally{
           Connexion.closeCnx(con);
      }				
    }

  3. #3
    F2S
    F2S est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 139
    Points : 97
    Points
    97
    Par défaut
    te permet de récupéré le première élément de ton enregistrement...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    while(rs.next()){
    	final int nbr = rs.getInt(1);
    }
    te permet de récupérer les champs "Nom" et "Prenom", et de crée un objet personne. Ensuite ça met toutes les personnes trouvées dans une liste et bingo à la fin tu récupere une liste de personnes qui correspondent a ta requette....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    List personnes = null;
    while(rs.next()) {
                    Personne obj = new Personne();
                    obj.setNom(rs.getString(
                            "Nom"));
                    obj.setPrenom(rs.getString(
                            "Prenom"));
                    personnes.add(obj);
    }
    return personnes;
    bon y da'autres façon de faire.. dit moi si celle-ci ne te plait pas...

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

Discussions similaires

  1. Message d'erreur sur ma base de données
    Par Zizou7 dans le forum Bases de données
    Réponses: 2
    Dernier message: 15/06/2010, 15h42
  2. recherche accès base de donnée gratuit sur Internet
    Par manciaux dans le forum Gratuit
    Réponses: 2
    Dernier message: 22/05/2007, 14h36
  3. recherche accès base de donnée gratuit sur Internet
    Par manciaux dans le forum Hébergement
    Réponses: 2
    Dernier message: 22/05/2007, 14h36
  4. erreur acces base de donnée.
    Par Phiss dans le forum ASP
    Réponses: 8
    Dernier message: 08/11/2006, 10h49
  5. Erreur d'execution sur accès base acces en VB6
    Par gino911 dans le forum Access
    Réponses: 4
    Dernier message: 06/03/2006, 13h22

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