Java Solr CoreAware过滤器厂
我需要编写一个定制的solr FilterFactory,它需要关于注册它的核心的信息(我假设是多核环境)。由于某些原因,我被禁止从FilterFactory实现SolrCoreAware。是否有可能从工厂的构造函数/init方法获得内核Java Solr CoreAware过滤器厂,java,jakarta-ee,solr,multicore,Java,Jakarta Ee,Solr,Multicore,我需要编写一个定制的solr FilterFactory,它需要关于注册它的核心的信息(我假设是多核环境)。由于某些原因,我被禁止从FilterFactory实现SolrCoreAware。是否有可能从工厂的构造函数/init方法获得内核 提前谢谢 我认为您可以使用ResourceLoader对象: @Override public void inform(ResourceLoader loader) { Properties coreProperties = ((SolrResourc
提前谢谢 我认为您可以使用ResourceLoader对象:
@Override
public void inform(ResourceLoader loader) {
Properties coreProperties = ((SolrResourceLoader) loader).getCoreProperties();
System.out.println("SolrCoreName= " + coreProperties.getProperty("name"));
}
要使其正常工作,您需要在solr.xml文件上设置属性:
<solr persistent="true" sharedLib="../lib">
<cores adminPath="/admin/cores">
<core name="item" instanceDir="item">
<property name="name" value="item" />
<property name="dataDir" value="/data" />
</core>
</cores>
</solr>