-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 
Author Message
 Post subject: Pagination
PostPosted: Thu Nov 17, 2005 10:00 am 
Beginner
Beginner

Joined: Mon Jun 07, 2004 4:31 pm
Posts: 45
Location: France
Hibernate 3

Bonjour je fais de la pagination.
Pour recuperer une page j'utilise

Query query = getSession().createQuery("from "+className.getName());
query.setFirstResult(pageSize.intValue()*startPage.intValue());
query.setMaxResults(pageSize.intValue());
query.list();

Seulement j'aimerai trier cette page. Le probleme etant que si je trie en rajoutant une clause order by a ma requete je n'aurai pas les memes resultats dans ma page en fonction du trie. En effet il y a trie sur l'ensemble du recordset et ensuite recuperation de la page. C'est tres emmerdant ;-)

J'ai essayé de faire un filter


Query query = getSession().createQuery("from "+className.getName());
query.setFirstResult(pageSize.intValue()*startPage.intValue());
query.setMaxResults(pageSize.intValue());
Query filterQuery = getSession().createFilter(query.list(),createOrderByQueryString(fields));
return filterQuery.list();

Mais il me fait une exception The collection was unreferenced

Quelqu'un a une idée pour résoudre ce problème ?


Top
 Profile  
 
 Post subject:
PostPosted: Mon Nov 21, 2005 4:15 am 
Beginner
Beginner

Joined: Mon May 02, 2005 2:13 pm
Posts: 20
Location: France
Salut,

Peut être un traitement javascript sur les lignes de ton tableau.

A+


Top
 Profile  
 
 Post subject:
PostPosted: Mon Dec 05, 2005 1:31 pm 
Newbie

Joined: Mon Dec 05, 2005 12:46 pm
Posts: 1
Bonjour,

Si tu souhaites trier uniquement le contenu du recordset, sur un critère différent de l'ordre de pagination, la solution la plus simple me semble être de trier, en Java, la List retournée.

Ex:
Code:
List laListe = query.list();
Comparator tonComparateur = new ComparateurPourTaClasse();
Collections.sort(laList, tonComparateur);


Mais, je dois avouer que j'ai du mal à imaginer une situation dans laquelle on souhaite faire une pagination et trier dans un ordre différent l'affichage. Est-ce que tu peux donner un exemple (simple curiosité de ma part...).

Lionel


Top
 Profile  
 
 Post subject:
PostPosted: Wed Dec 07, 2005 12:34 pm 
Beginner
Beginner

Joined: Mon May 02, 2005 2:13 pm
Posts: 20
Location: France
Salut,
La question n'est pas pour moi, mais je pense que j'ai un exemple. Une liste d'articles que l'on voudraient afficher en fonction de leurs prix.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.