Liferay';s URL字段在Solr中未被索引

Liferay';s URL字段在Solr中未被索引,solr,liferay,Solr,Liferay,有人能够在solr中获取liferay url的索引吗?(我所说的url只是指可以承载portlet的liferay页面。) 虽然该字段是在模式中定义的,但我在solr查询响应中没有看到值! 事实上,url字段从未在响应中返回 有什么建议吗?(我们的portlet将直接访问solr服务器以获取结果) 我尝试使用url作为文本,index=true和stored=true和 由布局对象共同构造的Liferay页面/URL中的字符串,index=true,stored=true。据我所知,我没有看到

有人能够在solr中获取liferay url的索引吗?(我所说的url只是指可以承载portlet的liferay页面。)

虽然该字段是在模式中定义的,但我在solr查询响应中没有看到值! 事实上,url字段从未在响应中返回

有什么建议吗?(我们的portlet将直接访问solr服务器以获取结果)

我尝试使用url作为文本,index=true和stored=true和
由布局对象共同构造的Liferay页面/URL中的字符串,index=true,stored=true

。据我所知,我没有看到布局对象首先被索引

如果要对布局对象进行索引,可以考虑编写钩子。添加/更新布局时,可以在布局对象上创建索引

例如:您可以参考bookmarksportlet,在那里您可以看到如何为书签编制索引

Indexer indexer = IndexerRegistryUtil.getIndexer(
BookmarksEntry.class);
indexer.reindex(entry);


查看如何添加自定义搜索功能

页面或菜单结构不会在Liferay中自动编制索引

无需编程的简单解决方法:

  • 为要索引的每个页面创建WebContent。Webcontent名称和内容应包含页面名称
  • 确保未设置WebContent显示页面
  • 将WebContent添加到页面(底部)
  • 在“外观”菜单中将WebContent文本的颜色更改为背景色(使其不可见)
  • 确保将搜索portlet配置为“在上下文中显示”
  • 搜索页面名称,也称为WebContent名称。您的条目将位于搜索结果的顶部。如果未将WebContent的排名设置为更高

好的,你知道这个URL字段应该包含什么吗?我想你指的是SOLR URL字段。这与Liferay页面URL不同。无论Liferay如何,每个solr索引都将具有此URL字段。我检查了Indexer.java类中的书签、Wiki等。我看到页面URL被索引为field.URL本身。那么这个URL肯定会在某个地方出现?(索引?)?如果正在存储liferay页面url,那么您可能必须选择该选项(为Portlet提供自定义搜索功能)