2010-05-21 61 views
1

我在Solr中创建了一个请求处理程序,它使用dismax并将我的查询限制在某些字段中,并在“标题”字段中增加了相关性的提升。当使用SolrJ时,我可以将它指向请求处理程序吗?

当我直接在浏览器中使用http请求直接访问Solr时,这一切都正常。然而,我的问题是,如果我使用SolrJ访问Solr,是否可以使用请求处理程序?

如果我可以控制请求处理程序中的提升和过滤器等,而不必更改代码,但我看不到如何在API中指定请求处理程序。

任何想法?

回答

5

在类SolrQuery中,有一个方法setRequestHandler,允许您这样做。您按照solrconfig.xml中的定义传递请求处理程序的名称(可能是'dismax')。

+0

谢谢!这样可行。 – Pinguthepenguin 2010-06-18 15:48:55

+0

从Solr 3.6起,** qt参数**的'requestDispatcher'处理默认设置为false。参见[solr wiki](http://wiki.apache.org/solr/SolrRequestHandler#Old_handleSelect.3Dtrue_Resolution_.28qt_param.29)。 – cuh 2012-08-10 11:46:55

+4

在solr 4.x中,它是setRequestHandler – Philippe 2014-08-04 20:00:08

相关问题