Hello tout le monde!

Je souhaite verifier que le contenu d'un ResultSet est exactement le meme que le contenu de mon ArrayList et je rame....

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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public static boolean analyseIdentique(int idQuestion, Question uneQuestion){
        boolean resultat = false;
        System.out.println("coucou"+resultat);
        try {
            // Connection à la base de données
            conBD = connexionBD();
            Statement requete = conBD.createStatement();
 
            // Contrôle de l'existance de la question dans la bd avec le format Kern
            ResultSet resultatRequeteListeTypeAnalyse = requete.executeQuery(
                    "SELECT type_analyse.* " +
                    "FROM type_analyse, possession, question " +
                    "WHERE question.id_question = possession.id_question " +
                    "AND possession.id_type_analyse = type_analyse.id_type_analyse " +
                    "AND question.id_question LIKE '"+ idQuestion +"'");
            resultatRequeteListeTypeAnalyse.last();
            //on récupère le numéro de la ligne
            int nombreLignes = resultatRequeteListeTypeAnalyse.getRow();
            //on repace le curseur avant la première ligne
            resultatRequeteListeTypeAnalyse.beforeFirst();
            System.out.println("nombre ligne BD: "+nombreLignes);
            System.out.println("nombre analyse question "+uneQuestion.getTypeAnalyse().size());
            if(nombreLignes==uneQuestion.getTypeAnalyse().size()){
                for(int i=0;i<uneQuestion.getTypeAnalyse().size();i++){
                    resultatRequeteListeTypeAnalyse.beforeFirst();
                    while(resultatRequeteListeTypeAnalyse.next()||(!resultat)){
                        if(uneQuestion.getTypeAnalyse().get(i).toString().equals(resultatRequeteListeTypeAnalyse.getString("nom_analyse"))){
                            resultat=true;
                        }else{
                            resultat=false;
                        }
                    }
                }
            }else{
                resultat=false;
            }
        } catch(Exception e) {
            e.printStackTrace();
        }
        // déconnexion à la base de données
        deconnexionBD(conBD);
        return resultat;
    }
Je me retrouve avec l'erreur suivante
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
java.sql.SQLException: After end of result set
        at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:910)
        at com.mysql.jdbc.ResultSet.checkRowPos(ResultSet.java:698)
        at com.mysql.jdbc.ResultSet.getStringInternal(ResultSet.java:5476)
        at com.mysql.jdbc.ResultSet.getString(ResultSet.java:5420)
        at com.mysql.jdbc.ResultSet.getString(ResultSet.java:5436)
        at dmind.GestionnaireBd.analyseIdentique(GestionnaireBd.java:550)
        at dmind.ProgrammeDmind.main(ProgrammeDmind.java:29)
Qui correspond à la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
if(uneQuestion.getTypeAnalyse().get(i).toString().equals(resultatRequeteListeTypeAnalyse.getString("nom_analyse"))){
Le problème vient de mon algo...

Quelqu'un de charitable pour m'aider??