【发布时间】:2012-03-02 06:32:05
【问题描述】:
我需要像这样自定义 Solr 高亮前缀和后缀:
<span class="highlight">text</span>
而不是默认的
<em>text</em>
这就是我在solrconfig.xml 中为HighlightComponent 使用此配置的原因:
<searchComponent class="solr.HighlightComponent" name="highlight">
<highlighting>
<fragmentsBuilder name="simple" default="true" class="solr.highlight.SimpleFragmentsBuilder">
<lst name="defaults">
<str name="hl.tag.pre"><![CDATA[<span class="highlight">]]></str>
<str name="hl.tag.post"><![CDATA[</span>]]></str>
</lst>
</fragmentsBuilder>
</highlighting>
</searchComponent>
以下是我的标准请求处理程序的默认参数:
<requestHandler name="standard" class="solr.SearchHandler" default="true">
<lst name="defaults">
<str name="hl">true</str>
<str name="hl.fl">body,title</str>
<str name="hl.useFastVectorHighlighter">true</str>
</lst>
</requestHandler>
当我搜索 text 单词时,我确实会突出显示文本单词,但并不总是使用我配置的前缀和后缀:
<lst name="highlighting">
<lst name="document_1">
<arr name="body">
<str>my <em>text</em> highlighted</str>
</arr>
<arr name="title">
<str>my <span class="highlight">text</span> highlighted</str>
</arr>
</lst>
</lst>
有人知道为什么吗?
【问题讨论】:
标签: solr highlighting