我的配置定义如下:
<requestHandler name="/search" class="org.apache.solr.handler.component.SearchHandler">
<lst name="defaults">
<str name="spellcheck">true</str>
.
.
.
</lst>
<arr name="components">
<str>search</str>
<str>search_custom_response_builder</str>
</arr>
</requestHandler>
现在,当我执行查询时,我希望执行search和search_custom_response_builder,但出于测试目的,我想看到仅搜索的输出。我怎样才能做到这一点?我知道使用另一个Requesthandler是微不足道的,但我想知道是否有更好的方法。在那儿?我可以告诉Solr只能从搜索中获得结果而不是search_custom_response_builder吗?
答案 0 :(得分:0)
如果查看标准示例,可以看到搜索组件具有启用标志,例如:
<!-- Clustering Component
You'll need to set the solr.clustering.enabled system property
when running solr to run with clustering enabled:
java -Dsolr.clustering.enabled=true -jar start.jar
http://wiki.apache.org/solr/ClusteringComponent
http://carrot2.github.io/solr-integration-strategies/
-->
<searchComponent name="clustering"
enable="${solr.clustering.enabled:false}"
class="solr.clustering.ClusteringComponent" >
因此,您可以将其作为参数传递给启动脚本。我也相信你可以specify that in the core.properies file:
如果你有一个最近的5.x Solr,你也可以查看Request Parameters and/or useParams,虽然我不确定它是否支持组件块(它应该)。在useParams的情况下,附加参数成为URL中的另一个变量。