2016-04-28 11 views
0

Ich versuche AEM's Querybuilder API zu verwenden, um eine generische Suche durchzuführen. Das Problem, das ich gerade habe, ist die Erstellung einer Seitennummerierung mit dem QueryBuilder. Bei Verwendung der ResultPage Klasse in AEM mit SearchResult zu getNextPage(). Ich bekomme das Ergebnis [email protected]. Wie würde ich das in eine URL umwandeln? Ich verwende bereits den Offset und die Ergebnissumme mit dem QueryBuilder, kann aber keine weitere Dokumentation finden, um mich in die richtige Richtung zu bringen.AEM-Klasse querybuilder return

queryBuilder=resource.getResourceResolver().adaptTo(QueryBuilder.class); 
//creating query based on the Query Description 
Query query=queryBuilder.createQuery(PredicateGroup.create(map),session); 
//Getting and storing the Results 
List Pages1 = searchRes.getResultPages(); 
ResultPage nextpage = searchRes.getNextPage(); 
ResultPage lastpage = searchRes.getPreviousPage(); 
for (Hit hit:searchRes.getHits()){ 

String path1=hit.getPath(); 
String title1=hit.getTitle(); 
String excerpt1=hit.getExcerpt(); 

Antwort

1

Sie können nicht. Die Objekte ResultPage enthalten Informationen zu Ihren Suchergebnissen, die Sie von QueryBuilder erhalten haben. Sie können diese Informationen verwenden, um eine eigene Seitennumerierung und Suchergebnisseite (n) zu erstellen. Da das Objekt SearchResult nur die Ergebnisse der aktuellen Seite enthält, können Sie die ResultPage verwenden, um auf einfache Weise den Index und Start aller anderen Seiten zu erhalten, die Sie von QueryBuilder anfordern können, z. B. basierend auf den Einstellungen für Ihre Abfrage :

query.setStart(start); 
query.setHitsPerPage(hitsPerPage); 

Aber es gibt keine Verbindung zum Frontend ...

+0

Danke für die Erklärung, Oliver. Wie würde ich die Paginierung einstellen, wenn es mit jQuery sein müsste? oder unterstützt QueryBuilder dies in JSP? – alstonan25

+0

Auch könnte ich die Search.Result-Klasse verwenden, die auch die Methode getnextpage() zusammen mit einer Methode zum Abrufen der URL hat. – alstonan25