Java.lang.nullpointerException

Résolu
Ahmedcss -  
tarek_dotzero Messages postés 834 Statut Membre -
Bonjour, j'ai essayé de faire un petit programme de login mais au moment de l'exécution, une erreur se produit: java.lang.nullpointerException
voici mon code pour la connexion:
public class DBConnection {
    private Connection conn;
    public  Connection ConnectBD(){
    try{
    Class.forName("com.mysql.jdbc.Driver");
        System.out.println("connection success");}
    catch(ClassNotFoundException cnfe){
        System.out.println("connection fail"+ cnfe);
    }
    
    String url="jdbc:derby://localhost:1527/firstDataBase";
   
    try{
    conn=(Connection) DriverManager.getConnection(url,"root", "");
        System.out.println("DataBase Connected");
    }
    
   catch(SQLException e){
       System.out.println("No connection "+e);
   }
    return conn;
    } 
}

voici le code lorsque je clique sur le bouton login:
 Connection conn= new DBConnection().ConnectBD();

private void loginActionPerformed(java.awt.event.ActionEvent evt) {                                      
      
     String sql="select * from APP.USER1 when USERNAME="+username.getText() +"and PASSWORD="+password.getText();
        try{
          PreparedStatement  pst=conn.prepareStatement(sql);
           
          ResultSet  rs=pst.executeQuery();
            if(rs.next()){
            JOptionPane.showMessageDialog(null, "welcome");
             Welcome w= new Welcome();
            w.setVisible(true);
            }
            else {
            JOptionPane.showMessageDialog(null,"user incorrect");
            }
                   
        }
        catch(Exception e){
            JOptionPane.showMessageDialog(null, e);
           
        }
    }

S'il vous plait aidez moi et merci d'avance.

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.

1 réponse

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,

    En général ... les messages d'erreur complet contiennent un numéro de ligne...
    Pourrais tu donner l'intégralité de l'erreur ?

    0
    1. KX Messages postés 19031 Statut Modérateur 3 020
       
      Pour avoir le message d'erreur complet il faudrait faire des
      e.printStackTrace()
      plutôt que des
      "No connection "+e
      ou
      showMessageDialog(null, e)
      qui ne font appel qu'au
      toString
      de l'Exception.
      0
    2. ahmedCSS Messages postés 12 Statut Membre
       
      lors de l'exécution ce message apparait :
      No connection java.sql.SQLException: No suitable driver found for jdbc:derby://localhost:1527/firstDataBase
      et par la suite la boite de dialogue s'ouvre avec l'erreur Java.lang.nullpointerException
      j'ai ajouter la bibliothèque mysql-connector-java-5.1.35 mais le problème persiste encore
      0
    3. tarek_dotzero Messages postés 834 Statut Membre 122
       
      Le problème n'est-il pas dans la chaîne de connexion ou bien dans le nom du pilote.
      Le pilote Apache pour Derby, à titre d'exemple, utilise la chaine suivante :
      org.apache.derby.jdbc.EmbeddedDriver
      Du coup la "connection" retourné est "null" et dès que vous tentez de créer un "statment" le NullPointerException est lancée.
      0