Bonjour à tous,

voilà j'ai un problème de trie et je galère avec depuis deux jours déjà, je vous explique:

j'ai une liste d'objet définie comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 List<ConfigCTO> liste = new ArrayList<ConfigCTO>();
et que j'alimente avec un result set (le résultat de ma requete), puis je fais le trie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
 SqlQuery requete = null;
		try {
			requete = new SqlQuery(config.getString("jndiMes"), sqlTouteLaListeAServir);			
			final ResultSet rs = requete.getResults();
			while (rs.next())
			{
				ConfigCTO cto = new ConfigCTO(rs.getString("PN"), rs.getString("IDECLIENT"), rs.getString("CONFIGCODE"), rs.getString("NUMCONFIG"), rs.getInt("QTE_USED"), rs.getString("DATEXPED"));
 
				liste.add(cto);					
			}
 
			//trie de la liste
			 Collections.sort(liste);
dans ma classe ConfigCTO , j'ai définie la ma méthode compareTo comme suit pour faire le trie par date, client et configCode :
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
 
//trie par date, client et parnumConfig
	public int compareTo(Object other) {
		// TODO Auto-generated method stub
		String date1 = ((ConfigCTO) other).getDateExpe(); 
		String client1 = ((ConfigCTO) other).getClient();
		String configcode1 = ((ConfigCTO) other).getConfigcod(); 
 
		String date2 = this.getDateExpe(); 
		String client2 = this.getClient(); 
		String configcode2 = this.getConfigcod(); 
 
		int dateCmp = date2.compareTo(date1);
        if (dateCmp != 0) 
            return dateCmp;
 
        int clientCmp = client2.compareTo(client1);
        if (clientCmp != 0)
        	return clientCmp ;
 
        int configcodeCmp = configcode2.compareTo(configcode1);
        if (configcodeCmp != 0)
        	return configcodeCmp ;
        else 
        	return 1;        
	} 
 
}
le problème c'est que le trie de ma liste n'est pas bonne à la sortie, j'ai essayé plein de truc en cherchant sur le net, mais jusque là j'arrive toujours pas à trier ma liste.

quelqu'un aurait-il une idée de ce que j'ai peut être loupé? ou ce n'est simplement pas possible de trier les objets dans une liste sur plusieurs attributs?

vos aides seront les bien venus, parce que là je ne sais vraiment pas quoi faire

je vous remercie de votre aide par avance.