Bonjour à vous tous. Je suis en se moment sur mon dernier tp de Java de mon cours de Java et j'ai quelques problème à faire afficher le resultset reçus de la base de donnée. Je reçois toujours cet erreur et malgré de nombreuses heures à essayer de la régler, jamais je n'y suis parvenu. Voici l'erreur que je recois:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
Exception in thread "main" java.lang.NullPointerException
	at agence.infrastructure.CourtierImplémentation.afficherCircuit(CourtierImplémentation.java:552)
	at agence.infrastructure.AgenceImplémentation.afficherCircuit(AgenceImplémentation.java:51)
	at agence.lancement.Lancement.test14(Lancement.java:345)
	at agence.lancement.Lancement.main(Lancement.java:61)
Pourtant, j'ai fais exactement de la même facon que mes autres fonctions qui eux fonctionnent très bien. J'espère que vous allez pouvoir m'aider sur ce coup. Merci d'avance.

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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
 
	/** afficherCircuit: Pemettra d'afficher les différents circuits;
         *  @return tarifTransportInfo
         */
	public List<VueListeRéservation> afficherCircuit(String p_noCircuit) throws AgenceException {
	ResultSet rs= null;
	List<VueListeRéservation> listeRéservation= new ArrayList<VueListeRéservation>();
 
	//Validation.validerNoCircuit(p_noCircuit);   TODO
	try {
		synchronized (expressionAfficherCircuit) {
			expressionAfficherCircuit.clearParameters();
 
			// Affection des paramètres
			expressionAfficherCircuit.setString(1, p_noCircuit);
 
		    // Exécution de la requête.
		    expressionAfficherCircuit.executeQuery();
 
    		int i= 0;
        	while(rs.next()){
                try {
                    VueListeRéservation vue = new VueListeRéservation();
                    vue.setÉtape(String.valueOf(rs.getString("NOÉTAPE")));
                    vue.setType(String.valueOf(rs.getString("TYPE")));
                    vue.setEntreprise(String.valueOf(rs.getString("NUMÉROFOURNISSEUR")));
                    vue.setFourniture(String.valueOf(rs.getString("SIÈGECHAMBRE")));
                    vue.setNomPays(String.valueOf(rs.getString("NOMPAYS")));
                    vue.setNomVille(String.valueOf(rs.getString("NOMVILLE")));
                    vue.setDateDépart(String.valueOf(rs.getString("DATEDÉPART")));
                    vue.setPaysDestination(String.valueOf(rs.getString("PAYSDESTINATION")));
                    vue.setVilleDestination(String.valueOf(rs.getString("VILLEDESTINATION")));
                    vue.setDateArrivé(String.valueOf(rs.getString("DATEARRIVÉ")));
                    vue.setDurée(String.valueOf(rs.getString("DURÉE")));
 
                    listeRéservation.add(i, vue);
                    ++i;
                    }
                    catch (SQLException sqle) {
                        throw new AgenceException(sqle.getMessage());
                    }
        	}
		} //fin synchronized
	} // fin try
	catch(SQLException sqle) {
		throw new AgenceException(sqle.getMessage());
	} // fin catch
	finally {
	    if (expressionAfficherCircuit != null) {
	        try {
	        	rs.close();
	        	expressionAfficherCircuit.close();
	        	connexion.close();
	        } 
	        catch (SQLException sqle) { // Ignorer.
	        	expressionAfficherCircuit = null;
	        } // catch
	    } // fin if
	} // fin finally
 
	return listeRéservation; 
	} // fin afficherCircuit
Voici pour vous aider, le code qui fait appelle à la fonction pour faire afficher les circuits recus.

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 static void test14() throws IOException {
	  Agence a= new AgenceImplémentation();
	  List<VueListeRéservation> listeRéservation= new ArrayList<VueListeRéservation>();
      System.out.println("TEST 14, Afficher Circuit 29."); 
 
	  try {
		  listeRéservation= a.afficherCircuit("29");
	      } catch (AgenceException e) {
	      e.printStackTrace();
	  }
 
	  for(int i= 0; i != listeRéservation.size(); ++i){
		  System.out.println(listeRéservation);
	  }
  }