我是Solr / SolrJ的新手。我想得到我的查询建议,为此我创建了一个名为“suggest”的请求处理程序(我使用以下链接作为参考:Suggester#LookupImplementations)。它提供了正确的输出,但是在bean格式中,即使我提供了参数:query.set(“wt”,“json”)。我需要将查询的输出转发给客户端应用程序。如何以JSON格式获取响应或如何在某些POJO中转换响应。当我使用默认请求处理程序即“select”时,我能够成功地执行此操作,它提供了一个响应,我可以将其转换为POJO,因为它包含我在Solr模式中的所有相同字段。如果您需要任何其他信息,请与我们联系。提前谢谢。
答案 0 :(得分:0)
将您的建议处理程序添加到选择请求处理程序,然后从那里开始。您需要在solrconfig.xml
中执行此操作,配置将如下所示:
<requestHandler name="/select" class="solr.SearchHandler">
<!-- default values for query parameters can be specified, these
will be overridden by parameters in the request
-->
<lst name="defaults">
<str name="echoParams">explicit</str>
<int name="rows">10</int>
<str name="df">dflt</str>
<str name="spellcheck">true</str>
<str name="spellcheck.dictionary">suggest</str>
<str name="spellcheck.count">3</str>
</lst>
<arr name="last-components">
<str>suggest</str>
</arr>
</requestHandler>
<searchComponent class="solr.SpellCheckComponent" name="suggest">
<str name="queryAnalyzerFieldType">spellcheck</str>
<lst name="spellchecker">
<str name="name">suggest</str>
<str name="field">spellcheck</str>
<str name="classname">solr.DirectSolrSpellChecker</str>
<int name="minPrefix">1</int>
<int name="minQueryLength">3</int>
<int name="maxEdits">2</int>
<int name="maxInspections">3</int>
<int name="minQueryLength">3</int>
<float name="maxQueryFrequency">0.01</float>
<float name="thresholdTokenFrequency">.00001</float>
<float name="accuracy">0.5</float>
</lst>
</searchComponent>