Я пытаюсь настроить Solr 3.5.0 на JBoss 5.1. Все работает вполне нормально. Я скопировал войну в каталог deploy, все зависимости из каталогов 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 предположительно содержат разные загрузчики классов.
Всякий раз, когда я запускаю Solr из приложения start.jar в примере (я думаю, он запускает сервер Jetty), он работает нормально.
Мой вопрос: действительно ли это связано с проблемой загрузчика классов или с чем-то другим? И, что более важно: как это исправить?