орг.апаш.solr.общий.SolrException: ошибка загрузки класса " org.апаш.solr.обработчик.dataimport.DataImportHandler
Я новичок в solr. Я установил apache tomcat 7.0 на свой сервер, и у меня есть solr 3.6.1 на сервере.
у меня есть папка solr-home, установленная сетевыми ребятами на моем диске D:. Папки в этом: Бен и т. д.,журналы,многожильный,веб-приложений.
в многоядерной папке находятся: core0, core1,exampledocs, README.txt и solr.XML. В папке webapps у меня есть solr.war file ничего больше.
Теперь я храню еще одну основную папку в многоядерной папке с именем ConfigUserTextUpdate которые имеют папку conf в нем и перезапускают службу tomcat, и я вижу новое ядро на localhost/solr.
Теперь я добавляю db-config.xml для ядра ConfigUserTextUpdate. Ниже приводится содержание:
<dataConfig>
<dataSource
type="JdbcDataSource"
driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://<dbname><servername>;databaseName=dbname" user="username"
password="password"/>
<document>
<entity name="ConfigUserTextUpdate" query="UserTextUpdate_Index">
</entity>
</document>
</dataConfig>
до Здесь все в порядке, и все три ядра показаны на localhost/solr. Теперь в solrconfig.xml ядра ConfigUserTextUpdate добавляю строку
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">db-data-config.xml</str>
</lst>
</requestHandler>
и он начинает давать ошибку, как показано ниже:
HTTP Status 500 - Severe errors in solr configuration. Check your log files for more detailed information on what may be wrong. If you
хотите, чтобы solr продолжался после ошибок конфигурации, изменения: false in solr.XML ------------------------------------------------------------- орг.апаш.solr.общий.SolrException: ошибка загрузки класса орг.апаш.solr.обработчик.dataimport.DataImportHandler ' at орг.апаш.solr.ядро.SolrResourceLoader.findClass (SolrResourceLoader.java: 394) в орг.апаш.solr.ядро.SolrCore.метод createinstance(SolrCore.java: 419) at орг.апаш.solr.ядро.SolrCore.createRequestHandler (SolrCore.java: 455) на орг.апаш.solr.ядро.RequestHandlers.initHandlersFromConfig (RequestHandlers.java: 159) в орг.апаш.solr.ядро.SolrCore.(SolrCore.java: 563) at орг.апаш.solr.ядро.CoreContainer.create (CoreContainer.java: 480) at орг.апаш.solr.ядро.CoreContainer.загрузить (CoreContainer.java:332) at орг.апаш.solr.ядро.CoreContainer.загрузить (CoreContainer.java: 216) at орг.апаш.solr.ядро.Инициализатор CoreContainer$.инициализация (CoreContainer.java: 161) на орг.апаш.solr.сервлет.SolrDispatchFilter.init (SolrDispatchFilter.Ява:96) на орг.апаш.Каталина.ядро.ApplicationFilterConfig.initFilter (ApplicationFilterConfig.java: 277) на орг.апаш.Каталина.ядро.ApplicationFilterConfig.getFilter (ApplicationFilterConfig.java: 258) на орг.апаш.Каталина.ядро.ApplicationFilterConfig.setFilterDef (ApplicationFilterConfig.java: 382) на орг.апаш.Каталина.ядро.ApplicationFilterConfig.(ApplicationFilterConfig.java: 103) на орг.апаш.Каталина.ядро.StandardContext.filterStart (StandardContext.java: 4650) на орг.апаш.Каталина.ядро.StandardContext.startInternal (StandardContext.java: 5306) на орг.апаш.Каталина.утиль.LifecycleBase.start (LifecycleBase.java: 150) на орг.апаш.Каталина.ядро.ContainerBase.addChildInternal (ContainerBase.java: 901) на орг.апаш.Каталина.ядро.ContainerBase.addChild (ContainerBase.java: 877) на орг.апаш.Каталина.ядро.StandardHost.addChild (StandardHost.java: 633) на орг.апаш.Каталина.запуск.HostConfig.deployWAR (HostConfig.java: 977) на орг.апаш.Каталина.запуск.HostConfig$DeployWar.запустить(HostConfig.java: 1655) на Яве.утиль.параллельный.Исполнители$RunnableAdapter.вызов (неизвестный источник) на Яве.утиль.параллельный.FutureTask$Sync.innerRun (неизвестный источник) at Ява.утиль.параллельный.FutureTask.выполнить (неизвестный источник) в Ява.утиль.параллельный.ThreadPoolExecutor$Worker.runTask(неизвестный источник) на Яве.утиль.параллельный.ThreadPoolExecutor$Worker.запустить(неизвестный источник) на Яве.ленг.Нитка.запуск (неизвестный источник), вызванный: Ява.ленг.ClassNotFoundException: орг.апаш.solr.обработчик.dataimport.DataImportHandler at java.сеть.URLClassLoader$1.выполнить (неизвестный источник) в Ява.безопасность.AccessController.doPrivileged(родной метод) на Ява.чистая.Urlclassloader, на.findClass(неизвестный источник) на Ява.ленг.загрузчик классов.loadClass (неизвестный источник) at java.сеть.FactoryURLClassLoader.loadClass (неизвестный источник) at Ява.ленг.загрузчик классов.loadClass (неизвестный источник) at Ява.ленг.Класс.forName0 (собственный метод) at Ява.ленг.Класс.forName (неизвестный источник) в орг.апаш.solr.ядро.SolrResourceLoader.findClass (SolrResourceLoader.java: 378) ... Более 27
Я пробовал много вещей, как положить dataimporthandler.jar-файл в основной папке и многое другое на различных сайтах, но все еще получаю ту же ошибку. Пожалуйста, помоги мне с этим.
Дайте мне знать, если вам нужно больше информации.
спасибо продвижение.
4 ответов
вы должны отредактировать solrconfig.xml и добавьте путь к библиотеке, например:
<lib dir="../../../../dist/" regex="apache-solr-dataimporthandler-.*\.jar" />
..если он все еще у вас в каталоге. В Примере solrconfigs я обнаружил, что они помещают его прямо под
<luceneMatchVersion>LUCENE_40</luceneMatchVersion>
в solr-4.3.0 при попытке реализовать:http://wiki.apache.org/solr/DIHQuickStart Добавление:
<lib dir="../../../contrib/dataimporthandler/lib" regex=".*\.jar" />
<lib dir="../../../dist/" regex="solr-dataimporthandler-.*\.jar" />
в файле: ПРОЕКТ-ГЛАВНАЯ\solr\collection1\ conf\solrconfig.в XML
под существующие строки:
<lib dir="../../../contrib/velocity/lib" regex=".*\.jar" />
<lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />
решена проблема. возможно, вам нужно перезапустить контейнер сервлета (в случае по умолчанию: Jetty).