Aide sue exception in thread awt-eventqueue-0 "java.lang.NullPointerException"

Signaler
Messages postés
16
Date d'inscription
jeudi 6 décembre 2007
Statut
Membre
Dernière intervention
20 décembre 2012
-
Messages postés
16
Date d'inscription
jeudi 6 décembre 2007
Statut
Membre
Dernière intervention
20 décembre 2012
-
j'essaye d'afficher les etudiants d'une ville dont le nom est passé dans une JComboBox et voici le message d'erreur

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at extraction.fenetre$1.itemStateChanged(fenetre.java:35)
at javax.swing.JComboBox.fireItemStateChanged(Unknown Source)
at javax.swing.JComboBox.selectedItemChanged(Unknown Source)
at javax.swing.JComboBox.contentsChanged(Unknown Source)
at javax.swing.AbstractListModel.fireContentsChanged(Unknown Source)
at javax.swing.DefaultComboBoxModel.setSelectedItem(Unknown Source)
at javax.swing.JComboBox.setSelectedItem(Unknown Source)
at javax.swing.JComboBox.setSelectedIndex(Unknown Source)
at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(Unknown Source)
at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at javax.swing.plaf.basic.BasicComboPopup$1.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
------------------------------------------

merci pour l'aide

3 réponses

Messages postés
16
Date d'inscription
jeudi 6 décembre 2007
Statut
Membre
Dernière intervention
20 décembre 2012

ah j'ai oublié de citer le code de ma classe fenetre :

package extraction;

import java.awt.FlowLayout;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.ArrayList;
import java.util.LinkedList;

import javax.swing.*;

public class fenetre extends JFrame implements Runnable {
public LinkedList<Etudiant> l=new LinkedList<Etudiant>();
public static JComboBox liste;
public JButton b;
private JPanel pan;
public String[] villes={"","Tanger","Fes","Casa"};
public fenetre(){
exemple1();
setVisible(true);
pack();
//setSize(500,500);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void exemple1(){
pan=new JPanel();
pan.setLayout(new FlowLayout(FlowLayout.LEFT));
liste=new JComboBox(villes);
b=new JButton("afficher");
liste.addItemListener(new ItemListener(){
public void itemStateChanged(ItemEvent e) {
LinkedList<Etudiant> l=new LinkedList<Etudiant>();
if(e.getStateChange()==ItemEvent.SELECTED){
//if(liste.getSelectedItem().equals("Fes")){
l=GestMetier.selectEtParVille((String)liste.getSelectedItem());
for(int i=0;i<l.size();i++) {
System.out.println(l.get(i).getNumEtud()+"::"+l.get(i).getNomEtu());

System.out.println((String)liste.getSelectedItem());
}
}
//}

}});
pan.add(liste);
pan.add(b);
add("Center",pan);
}
public static void main(String [] args){
new fenetre();
}
public void run() {

}
}

Salut,


Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at extraction.fenetre$1.itemStateChanged(fenetre.java:35) <<<< ligne 35

Peux-tu confirmer que la ligne 35 est bien:
System.out.println(l.get(i).getNumEtud()+"::"+l.get(i).getNomEtu());


Si c'est oui c'est qu'il n'y a rien dans l

D'autre part:
 public class MaFenetre extends JFrame implements Runnable { 
      //public LinkedList<Etudiant> l=new LinkedList<Etudiant>(); 
      public LinkedList<Etudiant> l; // corriger comme cela
      public static JComboBox liste;
      ........

Et:
                  public void itemStateChanged(ItemEvent e) { 
                     //LinkedList<Etudiant> l=new LinkedList<Etudiant>();
                     l=new LinkedList<Etudiant>();
                     if(e.getStateChange()==ItemEvent.SELECTED){ 
                     //if(liste.getSelectedItem().equals("Fes")){ 
                        l=GestMetier.selectEtParVille((String)liste.getSelectedItem()); 
                        for(int i=0;i<l.size();i++) { 
                           System.out.println(l.get(i).getNumEtud()+"::"+l.get(i).getNomEtu()); 
                        
                           System.out.println((String)liste.getSelectedItem()); 
                        }


Cordialement,

...\ Dan /...
Messages postés
16
Date d'inscription
jeudi 6 décembre 2007
Statut
Membre
Dernière intervention
20 décembre 2012

merci, mais voila mon problème:
j'ai une Combobox qui contient 3 ville, lorsque je selection la 1ere ville ca marche il affiche la liste des etudiants appartenant à cette ville,et si je veux selectionner une autre ville il m'affiche cette exception .


-- la ligne 35 :for(Etudiant a:l) /traitement
j'ai cherché dans le web et j'ai trouvé que une variable est utilisée sans etre declarer.
vraiment j'ai utilisé plusieurs choses pour résoudre ce probleme mais sans succes.