2013-10-02 16 views
6

I wydaje się mieć problemy coraz solr działa, I przestrzegać instrukcji tutajawaria SOLR RequestHandler startowe

http://andres.jaimes.net/878/setup-lucene-solr-centos-tomcat/

Wszystko szło dobrze, ale teraz próbuję zaimportować dane z mysql. Aby to zrobić, śledzę ten poradnik

http://www.wheelsandcogs.co.uk/2011/01/13/solr-tomcat-mysql-ubuntu/

Błąd pojawia się, gdy mogę dodać to do mojego solrconfig.xml

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

Jest to błąd otrzymuję. Jeśli to usuniemy, solr działa dobrze, ale oczywiście nie mogę importować z mysql.

HTTP Status 500 - {msg=SolrCore 'collection1' is not available due to init failure: 
RequestHandler init failure,trace=org.apache.solr.common.SolrException: SolrCore 
'collection1' is not available due to init failure: RequestHandler init failure at 
org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:1212) at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:248) at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:155) at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.jav 
a:235) at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java 
:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at 
java.lang.Thread.run(Thread.java:724) Caused by: org.apache.solr.common.SolrException: 
RequestHandler init failure at org.apache.solr.core.SolrCore.<init>(SolrCore.java:821) at 
org.apache.solr.core.SolrCore.<init>(SolrCore.java:618) at 
org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:949) at 
org.apache.solr.core.CoreContainer.create(CoreContainer.java:984) at 
org.apache.solr.core.CoreContainer$2.call(CoreContainer.java:597) at 
org.apache.solr.core.CoreContainer$2.call(CoreContainer.java:592) at 
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at 
java.util.concurrent.FutureTask.run(FutureTask.java:166) at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at 
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) at 
java.util.concurrent.FutureTask.run(FutureTask.java:166) at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) ... 1 more 
Caused by: org.apache.solr.common.SolrException: RequestHandler init failure at 
org.apache.solr.core.RequestHandlers.initHandlersFromConfig(RequestHandlers.java:168) at 
org.apache.solr.core.SolrCore.<init>(SolrCore.java:758) ... 13 more Caused by: 
org.apache.solr.common.SolrException: Error loading class 
'org.apache.solr.handler.dataimport.DataImportHandler' at 
org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:464) at 
org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:396) at 
org.apache.solr.core.SolrCore.createInstance(SolrCore.java:518) at 
org.apache.solr.core.SolrCore.createRequestHandler(SolrCore.java:592) at 
org.apache.solr.core.RequestHandlers.initHandlersFromConfig(RequestHandlers.java:154) ... 
14 more Caused by: java.lang.ClassNotFoundException: 
org.apache.solr.handler.dataimport.DataImportHandler at 
java.net.URLClassLoader$1.run(URLClassLoader.java:366) at 
java.net.URLClassLoader$1.run(URLClassLoader.java:355) at 
java.security.AccessController.doPrivileged(Native Method) at 
java.net.URLClassLoader.findClass(URLClassLoader.java:354) at 
java.lang.ClassLoader.loadClass(ClassLoader.java:424) at 
java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:789) at 
java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native 
Method) at java.lang.Class.forName(Class.java:270) at 
org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:448) ... 18 more 
,code=500} 

używam CentOS, stąd przy użyciu pierwszej instrukcji, aby uzyskać solr uruchomiony. Drugi przewodnik jest dla Ubuntu, jest krok w pobliżu początku instalacji JDBC, nie jestem pewien, czy zrobiłem to dobrze .. Zastanawiam się, czy to może być część problemu.

Odpowiedz

18

Okazuje się, że popełniłem głupi błąd.

Tutorial powyżej http://andres.jaimes.net/878/setup-lucene-solr-centos-tomcat/

zobowiązuje nas, aby skopiować

example/solr/ 

do

/home/solr 

z wyjątkiem tego konkretnego przykładu dostarczonych przez Solr nie zawiera niezbędnych plików do obsługi dataimports.

Aby rozwiązać ten problem:

1) Utwórz folder 'lib' w instancji solr (/ home/solr/lib)

2) z folderu, w którym został pobrany solr, kopiowania /dist/solr-dataimporthandler-x.x.x.jar i solr-dataimporthandler-extras-x.x.x.jar. Wklej oba do nowo utworzonego folderu lib.

Upewnij się również, że masz mysql-connector-java.jar w tym folderze, jeśli jeszcze tego nie zrobiłeś.

3) Zrestartuj serwer.

+0

dziękuję !! działa mi dobrze. – HCarrasko

-1

Musisz zmienić uprawnienia folderu:

sudo chmod -R 777 solr 
+0

Dzięki, który folder? –

+0

Solr strona główna. Folder, do którego kopiujesz przykład/solr/* – Sudheera