-
Bug
-
Résolution: Ne sera pas résolu
-
Mineur
-
Aucune
-
1.01.00
-
Aucune
-
0,125
Bonjour,
Lorsque l'on créé une liste manuelle, et que cette liste est appelée par une requête en comportant le paramètre "#NOMBRE=", la requête renvoie bien le bon nombre d'élément, mais l'ordre de la liste n'est plus conservé.
Exemple sur une liste de 4 fiches :
Dans RequeteUtil.traiterRequete, le paramètre nombre est supprimé.
objet=actualite&TRI_DATE=DATE_ASC&STYLE=0001&IDS=2204;2115;1903;2023&
Ensuite on itère sur un treeset, et l'ordre des fiches n'est pas conservé.
final TreeSet<Long> tListeFiches = new TreeSet<>(); while (ficheUniv.nextItem() && (limit == -1 || tListeFiches.size() < limit)) { // gestion des doublons if (!tListeFiches.contains(ficheUniv.getIdFiche())) { tListeFiches.add(ficheUniv.getIdFiche()); final ResultatRecherche resultat = new ResultatRecherche(); resultat.setObjet(objet); resultat.setIdFiche(String.valueOf(ficheUniv.getIdFiche())); res.add(resultat); } }
A ce moment là, la fiche id=1903 ne remonte plus dans la requête alors qu'on devrait avoir uniquement les 3 premières fiches ID=2204;2115;1903;
Si on supprime le critère nombre, les fiches sont bien affichées dans le bon ordre en front
Frédéric
- lié à
-
LISTES-5 Insérer liste manuelle
- Fini