0

我正在尝试启用对自定义实体的搜索,我已经实现了索引器并尝试执行如下搜索,但搜索不返回任何文档/结果

    SearchContext searchContext = SearchContextFactory.getInstance(request);
    searchContext.setKeywords(keywords);
    searchContext.setAttribute("paginationType", "more");
    searchContext.setStart(0);
    searchContext.setEnd(10);


    Indexer indexer = IndexerRegistryUtil.getIndexer(Position.class);
    Hits hits = indexer.search(searchContext);
    System.out.println("Hit count: " + hits.getLength());

索引器实现似乎正在工作,因为我可以看到使用内置弹性搜索控制台按预期索引的记录

localhost:9200/liferay-20116/_search

任何线索可能是什么问题?

仅供参考,我的自定义实体不包含“groupId”字段

4

1 回答 1

0

看起来由于某种原因,您的实体中必须有 groupId 才能使搜索工作,除非您愿意挖掘并覆盖该行为

我将 groupId 添加到我的实体中(尽管我不感兴趣)并且繁荣,它起作用了

于 2018-08-17T20:30:17.667 回答