Impossible d'obtenir un Obnject ou un Iteger dans ArrayList

snoodles Messages postés 13 Date d'inscription mardi 17 juillet 2007 Statut Membre Dernière intervention 23 mai 2008 - 21 avril 2008 à 18:40
snoodles Messages postés 13 Date d'inscription mardi 17 juillet 2007 Statut Membre Dernière intervention 23 mai 2008 - 21 avril 2008 à 21:15
Bonjour à tous,
après de multiples recherches sans réponses j'espère que vous pourrez m'aider.
Je développe actuellement une JApplet au dédut de laquelle je déclare deux arraylist:
            - un de type Object déclaré ainsi:         public List<Object> list1 = new ArrayList<Object>();
            - un autre de type Integer:                    public List list2 = new ArrayList();

j'ai bien importer java.util.ArrayList et java.util.List.

Ces deux listes sont implémentées lors d'une fonction dans une classe ClassLoader (voici une vue simplifiée de la fonction):

public void postit() {   
                  if (...){
                          ...
                          ...

class MyClassLoader extends ClassLoader {
public Class loadClass(String link){
Class result = findLoadedClass(link);


if (result != null) {


                        try {
                            Class thisClass = Class.forName(link);
                            list1.add(thisClass.newInstance());
                        } catch (InstantiationException ex) {
                            Logger.getLogger(menu.class.getName()).log(Level.SEVERE, null, ex);
                        } catch (IllegalAccessException ex) {
                            Logger.getLogger(menu.class.getName()).log(Level.SEVERE, null, ex);
                        } catch (ClassNotFoundException ex) {
                            Logger.getLogger(menu.class.getName()).log(Level.SEVERE, null, ex);
                        }
                        list2.add(1, new Integer (123) );}
return result;
}}}
(list2.add... c'est pour l'exemple histoire de tester si ça marchait)

                  int s = list2.get(1);
                  num[1].setText("normalement on devrait avoir:"+s); (num[i] étant un JLabel)
mais voilà ça ne marche pas, ni quand j'essaye de récupérer un object dans test1 ni mon integer dans test2. Je vous passe les détails mais c'est un JApplet dynamique. J'utilise java 1.6 sous netbeans.

Merci d'avance pour votre aide

1 réponse

snoodles Messages postés 13 Date d'inscription mardi 17 juillet 2007 Statut Membre Dernière intervention 23 mai 2008
21 avril 2008 à 21:15
Il s'agirait d'un problème de classe. En effectuant quelques test je m'aperçois que mon programme ne rentre pas dans la classe ClassLoader... et voilà donc pourquoi l'ArrayList est vide lorsque j'effectue mon get(index).
Pourquoi, je ne sais pas mais là je sèche...

Si quelqu'un a une idée sur le sujet, ma fonction postit doit passer le test du findLoadedClass(String); et en fonction de si la classe a déjà été chargée, charge une nouvelle instance dans l'ArrayList test1.
0
Rejoignez-nous