Bonjour à tous,

Aujourd’hui j'ai un problème vraiment très bizarre..

Voici le code :

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
public HashMap<String, String> getDivisionGroupeHM() {
        HashMap<String, String> hm = new HashMap<String, String>();
        try {
            Query query = em.createNativeQuery("SELECT long_name, name FROM Groupe_ews");
            List<Object[]> list = query.getResultList();
            for (int i = 0; i<list.size(); i++) {
                Object[] tmp = list.get(i);   //  <--- ICI : EXCEPTION : java.util.Vector cannot be cast to [Ljava.lang.Object;
                hm.put(tmp[0].toString(), tmp[1].toString());
            }
        }
        catch (Exception e) {
            log.fatal("Erreur: ", e);
            return null;
        }
        return hm;
    }
L'exception est donc java.util.Vector cannot be cast to [Ljava.lang.Object; ALORS QUE la méthode list.get(i) renvoi un tableau d'objet (d'après la javadoc)..
Bien-sur si j'essaye de remplacer "Object[] tmp = list.get(i);" PAR "Vector[] tmp = list.get(i);" NetBeans me dis fuck get(i) retourne un Object pas un Vecteur..
==> FOUTAGE DE GUEULE INTEGRAL ! mdr

Si quelqu'un a déjà fais face à ce problème, ou aurait une idée, je serait preneur !!

Ps : Meme probleme, meme exception si le for est defini comme ca :
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
public HashMap<String, String> getDivisionGroupeHM() {
        HashMap<String, String> hm = new HashMap<String, String>();
        try {
            Query query = em.createNativeQuery("SELECT long_name, name FROM Groupe_ews");
            List<Object[]> list = query.getResultList();
            for (Object[] resultElement : list) {
                hm.put((String)resultElement[0], (String)resultElement[1]);
            }
        }
        catch (Exception e) {
            log.fatal("Erreur: ", e);
            return null;
        }
        return hm;
    }
Update : Enocre mieux ! :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Vector[] tmp = (Vector[]) list.get(i);
=> Exception : java.util.Vector cannot be cast to [Ljava.util.Vector;
Un vector peut pas etre casté en vector.. Pas mal pas mal..

Merci d'avance pour votre aide.

Cordialement,