Partage
  • Partager sur Facebook
  • Partager sur Twitter

null pointer exception

Sujet résolu
    15 janvier 2007 à 8:46:15

    Bonjour,

    je réalise actuellement un programme en java et il commence à être bien avancé.

    je me suis rendu compte que j'avais un null pointer exception à un endroit que j'ai à peu près pu localiser.

    pourriez vous me dire à quoi correspond cette erreur. J'ai cru comprendre en cherchant sur le net que cela venait d'une instruction modifiant quelquechose de ne pas encore instancié ou pas visible.

    Mais cela n'est pas possible dans ma partie de code, je me demande donc si ce n'est pas un peu plus fin que cela.

    Merci d'avance pour votre aide
    • Partager sur Facebook
    • Partager sur Twitter
      15 janvier 2007 à 9:06:11

      Il s'agit bien de ce genre d'erreur... Mais même si dans ton code il te semble impossible d'instancier une variable non déclaré, une faute d'orthographe de le nom d'une de tes variables est peu être à envisager... :D

      Sinon un morceau de code nous aiderai bien à comprendre ton erreur... merci.
      • Partager sur Facebook
      • Partager sur Twitter
        15 janvier 2007 à 9:12:02

        voici un morceau de code :


        public void actionPerformed(java.awt.event.ActionEvent e) {
                String recherche_nom="";
                String recherche_prenom="";
                recherche_nom=JOptionPane.showInputDialog(null, "Entrez le nom de l'enfant :", "Ecran de saisie du nom", JOptionPane.PLAIN_MESSAGE);
                recherche_prenom=JOptionPane.showInputDialog(null, "Entrez le prenom de l'enfant "+recherche_nom+" :", "Ecran de saisie du prénom", JOptionPane.PLAIN_MESSAGE);
                if (controle(recherche_nom,recherche_prenom))
                {
                        affichage un_affichage=new affichage();
                        jContentPane.remove(getMain());
                        jContentPane.remove(getTitre());
                        jContentPane.add(un_affichage.getPnl_etat_civil());
                        jContentPane.repaint();
                        un_affichage.getPnl_etat_civil().revalidate();
                        un_affichage.afficher(recherche_nom,recherche_prenom);
                }


        et cela bug sur le if si et seulement si j'appuie sur annuler dans 1 des deux boites de dialogues.

        Je pense que "JOptionPane.showInputDialog" renvoi null si je clic sur "cancel" mais si je peux pas le contrôler je vois pas comment faire

        voici controle :


        public boolean controle(String nom,String prenom)
        {
                boolean ok=false;
                if (nom.isEmpty())
                        JOptionPane.showMessageDialog(null, "Veuillez saisir un nom !");
                if (prenom.isEmpty())
                        JOptionPane.showMessageDialog(null, "Veuillez saisir un prénom !");
                if (!(nom.isEmpty())&&(prenom.isEmpty()))
                        ok=true;
                return ok;
        }


        en fait là, je passe une référence null à une méthode (extrait explication null pointer exception) mais c'est justement cette méthode qui contrôle si ce n'est pas nul, alors comment faire ?

        //RESOLU //

        Je m'étais dis : "Une fois que j'ai fini mon prog, faudra que je vois ce que c'est que les exceptions"
        Ba c'est bon j'ai vu lol

        voici le problème réglé :


        try
        {
                if (controle(recherche_nom,recherche_prenom))
                {
                        Affichage un_affichage=new Affichage();
                        jContentPane.remove(getMain());
                        jContentPane.remove(getTitre());
                        jContentPane.add(un_affichage.getPnl_etat_civil());
                        jContentPane.repaint();
                        un_affichage.getPnl_etat_civil().revalidate();
                        un_affichage.afficher(recherche_nom,recherche_prenom);
                }
        }
        catch (NullPointerException npe){}
        }


        J'espère que cela aidera quelqu'un qui début comme moi

        A+ et merci
        • Partager sur Facebook
        • Partager sur Twitter

        null pointer exception

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown