gpt4 book ai didi

java - 为什么我不能在 JBoss 上的 Solr 中实例化 DataImportHandler?

转载 作者:行者123 更新时间:2023-11-28 23:40:58 25 4
gpt4 key购买 nike

我正在尝试在 JBoss 5.1 上设置 Solr 3.5.0。一切正常。我将 war 复制到部署目录中,将 dist 和 contrib 目录中的所有依赖项复制到 lib(或更早的部署)目录中。

我可以启动服务器,一切正常,但每当我想激活 DataImportHandler 来为我的数据库中的数据编制索引时,我都会收到错误消息。

基本上我所做的是复制我从 example/example-DIH/solr/db 复制一个核心(或整个示例,这无关紧要),我在 solr.xml 中注册核心并在启动时我得到一个错误:

15:17:10,707 SEVERE [RequestHandlers] org.apache.solr.common.SolrException: Error Instantiating Request Handler, org.apache.solr.handler.dataimport.DataImportHandler is not a org.apache.solr.request.SolrRequestHandler
at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:427)
at org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:461)
at org.apache.solr.core.RequestHandlers.initHandlersFromConfig(RequestHandlers.java:157)

我很确定我的请求处理程序定义是正确的,但只是为了确定:

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">dataimport.xml</str>
</lst>

据我所知,这个错误可能是由于 DataImportHandler 和 SolrRequestHandler 应该持有不同的类加载器引起的。

每当我从示例中的 start.jar 应用程序启动 Solr(我认为它启动了 Jetty 服务器)时,它工作正常。

我的问题是:这真的是因为类加载器问题,还是其他原因?而且,更重要的是:我该如何修复它?

最佳答案

这是一个类加载器问题,根据这个 post on the Lucene Developer Mailing List您需要执行以下操作:

make sure that the dataimport jars are NOT in the classpath and not loaded by other classloaders but from the path specified in solrconfig.xml. This will ensure that the dataimport classes are loaded by the same classloader.

请查看主题以了解更多详细信息。

关于java - 为什么我不能在 JBoss 上的 Solr 中实例化 DataImportHandler?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19692914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com