我正在尝试使用AEM的querybuilder API进行通用搜索。我目前遇到的问题是使用querybuilder创建分页。将AEM中的getNextPage()
类与SearchResult一起用于com.day.cq.search.impl.result.ResultPageImpl@541bd4bf
。我得到的结果
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();
。我该如何将其转换为URL?我已经在使用querybuilder的偏移量和结果总数,但找不到任何更多的文档来使我朝着正确的方向前进。
QAbstractItemDelegate::sizeHint()
答案 0 :(得分:1)
你做不到。 ResultPage
个对象包含您从QueryBuilder
获得的搜索结果的相关信息。您可以使用该信息构建自己的分页和搜索结果页面。
由于SearchResult
对象仅包含当前页面的结果,因此您可以使用ResultPage
轻松获取索引并启动您可以从QueryBuilder
请求的所有其他页面您用于查询的设置,例如:
query.setStart(start);
query.setHitsPerPage(hitsPerPage);
但与前端没有关系......