2010-02-20 6 views
3

Je suis en train de faire une recherche avec des critèresHibernate Search Paging + fulltextsearch + Critères

FullTextQuery fullTextQuery = fullTextSession.createFullTextQuery(finalQuery, KnowledgeBaseSolution.class).setCriteriaQuery(criteria); 

puis la page il

//Gives me around 700 results 
result.setResultCount(fullTextQuery.getResultSize()); 
//Some pages are empty 
fullTextQuery.setFirstResult(((pageNumber - 1) * pageSize)); 
fullTextQuery.setMaxResults(pageSize); 
result.setResults(fullTextQuery.list()); 

Je soupçonne Lucene retour complet des résultats de la recherche en texte intégral sans en prenant en compte les critères, puis en hibernant la recherche applique les critères après, donc certaines pages sont vides (après filtrage par critères)

Quelle est la bonne façon de faire fullText Recherche avec certains critères, est-il possible d'appliquer les critères avant la recherche Lucene?

Ou dois-je utiliser pur Lucene (si ce qui est le point de Hibernate Search?)

Merci à l'avance

+0

Salut Roy. Moi aussi, j'ai rencontré ce problème. Avez-vous trouvé une solution de contournement? – jaseFace

+0

non. J'ai fini par faire la pagination moi-même –

+0

Ceci est encore un problème en 2016: (( –

Répondre

1

Apparemment, vous ne pouvez pas utiliser fulltextsearch et les critères et la pagination/tri ensemble. À moins que vous allez au niveau Lucene

link text