这是我之前问题的延伸。
我将创建自定义请求处理程序,以在现有索引上提供术语关联挖掘。为了做到这一点,我需要访问在默认索引目录上打开的Solr的IndexReader
。
我能想到的唯一方法是通过调用SolrQueryRequest
来获得IndexReaderFactory
。getCore()
。getIndexReaderFactory()
。这家工厂有newReader()
方法,这似乎是我需要的。但是这个方法需要索引目录作为它的第一个参数。
这是我的问题:是正确的方式获得IndexReader?如果是这样,我怎么能得到Solr的索引目录?我可以访问Solr配置以从我的代码中找到它吗?还是应该使用其他方法?
我在阅读LukeRequestHandler
来源时找到了一个答案:
SolrIndexSearcher searcher = req.getSearcher();
IndexReader reader = searcher.getReader();
所以他们首先得到的是搜索器,然后才是阅读器。