Solr ExtractingRequestHandler не является org.apache.solr.request.SolrRequestHandler

Я пытаюсь использовать post.jar для индексации папки с файлами PDF. Я добавил обработчик запросов, но при запуске получаю сообщение об ошибке.

Кажется, что это может быть конфликт версий или загрузка повторяющегося класса, и поэтому он не распознается как SolrRequestHandler. Просто идея.

Я использую solr 3.4 на сервере Windows 2008 R2 с iis.

КОНФИГУРАЦИЯ:

<lib dir="C:\ColdFusion10\cfusion\jetty\solr\contrib\extraction\lib" />
<lib dir="C:\ColdFusion10\cfusion\jetty\solr\dist\" regex="apache-solr-cell-\d.*\.jar" />
<lib dir="C:\ColdFusion10\cfusion\jetty\solr\dist\" regex="apache-solr-dataimporthandler-\d.*\.jar" />


<requestDispatcher handleSelect="true" >
    <requestParsers enableRemoteStreaming="true" multipartUploadLimitInKB="15000000" />
</requestDispatcher>
<requestHandler name="/update/extract" class="org.apache.solr.handler.extraction.ExtractingRequestHandler">
    <lst name="defaults">
      <str name="fmap.Last-Modified">last_modified</str>
      <str name="uprefix">ignored_</str>
    </lst>
    <!-- Optional. Specify one or more date formats to parse.  See DateUtil.DEFAULT_DATE_FORMATS for default date formats -->
    <lst name="date.formats">
      <str>dd.MM.yyyy HH:mm:ss</str>
    </lst>
</requestHandler>

БРЕВНО:

    INFO: created /dataimport: org.apache.solr.handler.dataimport.DataImportHandler
Mai 30, 2013 3:20:43 PM org.apache.solr.common.SolrException log
SEVERE: org.apache.solr.common.SolrException: Error Instantiating Request Handler, org.apache.solr.handler.extraction.ExtractingRequestHandler is not a org.apache.solr.request.SolrRequestHandler
    at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:425)
    at org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:459)
    at org.apache.solr.core.RequestHandlers.initHandlersFromConfig(RequestHandlers.java:157)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:563)
    at org.apache.solr.core.CoreContainer.create(CoreContainer.java:463)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:316)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:207)
    at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:130)
    at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:94)
    at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
    at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
    at org.mortbay.jetty.Server.doStart(Server.java:224)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:985)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.mortbay.start.Main.invokeMain(Main.java:183)
    at org.mortbay.start.Main.start(Main.java:497)
    at org.mortbay.start.Main.main(Main.java:115)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at com.zerog.lax.LAX.launch(Unknown Source)
    at com.zerog.lax.LAX.main(Unknown Source)

Mai 30, 2013 3:20:43 PM org.apache.solr.search.SolrIndexSearcher <init>
INFO: Opening Searcher@74eb711e main
Mai 30, 2013 3:20:43 PM org.apache.solr.update.DirectUpdateHandler2$CommitTracker <init>
INFO: AutoCommit: if 10000 uncommited docs 

person user2436745    schedule 30.05.2013    source источник


Ответы (1)


Это определенно похоже на конфликт библиотек. У вас есть две версии Solr в системе? Я бы начал с изменения относительных путей в директивах на абсолютные и посмотрел, что произойдет. Возможно, ваш «домашний» каталог не такой, как вы думаете. Или LaunchAnywhere делает странные вещи с путем к классу.

person Alexandre Rafalovitch    schedule 30.05.2013
comment
я изменил пути к библиотеке (см. выше), но все равно получаю ту же ошибку. Есть ли какой-либо другой путь, который я забыл, кроме 3, которые я изменил? - person user2436745; 31.05.2013
comment
Хм. Возможно, у вас не совсем правильное определение класса. Можете ли вы еще раз проверить это на примере Solr 3.4 solrconfig.xml . Он имеет имя класса class=solr.extraction.ExtractingRequestHandler . Здесь используется сокращенная форма ссылки на класс, но, вероятно, в любом случае это лучше. - person Alexandre Rafalovitch; 31.05.2013
comment
я продвинулся немного дальше, но теперь я получаю это после того, как он говорит, что отправляет файл SimplePostTool: FATAL: Unexpected IOException java.io.FileNotFoundException: . (Доступ запрещен), когда я пытаюсь добавить документы с помощью post.jar с помощью следующей команды: java -Dauto -Drecursive -Durl=localhost:8985/solr/tkb/update/extract -jar C:\ColdFusion10\cfusion\jetty\exampledocs\post.jar C:\web\development\tkb\internet\ публичный\скачать - person user2436745; 31.05.2013
comment
Выделите это в отдельный вопрос, так как тема отдельная. - person Alexandre Rafalovitch; 31.05.2013