Ошибка Solr Search_api_attachment при индексировании из drush - PullRequest
0 голосов
/ 30 января 2020

Config: PHP 5.6 Solr-5.5.5 RHEL7 drupal7 search_api_attachments 7.x

Индексация ndes через пользовательский интерфейс успешно, но поиск по вложенным файлам не работает. При индексировании по drush sapi-i 'my_Index_name' выдает следующую ошибку:

"WD search_api_attachments: SearchApiException: "500" Status: Server Error: Server                                                                                                               [error]
Error{"error":{"metadata":{"error-class":"org.apache.solr.common.SolrException","root-error-class":"java.lang.ClassNotFoundException"},"msg":"Error loading class
'solr.extraction.ExtractingRequestHandler'","trace":"org.apache.solr.common.SolrException: Error loading class 'solr.extraction.ExtractingRequestHandler'\n\tat
org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:558)\n\tat org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:489)\n\tat
org.apache.solr.core.SolrCore.createInstance(SolrCore.java:566)\n\tat org.apache.solr.core.PluginBag$LazyPluginHolder.createInst(PluginBag.java:363)\n\tat
org.apache.solr.core.PluginBag$LazyPluginHolder.get(PluginBag.java:348)\n\tat org.apache.solr.core.PluginBag.get(PluginBag.java:148)\n\tat
org.apache.solr.handler.RequestHandlerBase.getRequestHandler(RequestHandlerBase.java:231)\n\tat org.apache.solr.core.SolrCore.getRequestHandler(SolrCore.java:1362)\n\tat
org.apache.solr.servlet.HttpSolrCall.extractHandlerFromURLPath(HttpSolrCall.java:328)\n\tat org.apache.solr.servlet.HttpSolrCall.init(HttpSolrCall.java:298)\n\tat
org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:414)\n\tat org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:257)\n\tat
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:208)\n\tat org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)\n\tat
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)\n\tat org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)\n\tat
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)\n\tat org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)\n\tat
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)\n\tat org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)\n\tat
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)\n\tat org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)\n\tat
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)\n\tat org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)\n\tat
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)\n\tat org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)\n\tat
org.eclipse.jetty.server.Server.handle(Server.java:499)\n\tat org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)\n\tat
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)\n\tat org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)\n\tat
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)\n\tat org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)\n\tat
java.lang.Thread.run(Thread.java:748)\nCaused by: java.lang.ClassNotFoundException: solr.extraction.ExtractingRequestHandler\n\tat
java.net.URLClassLoader.findClass(URLClassLoader.java:382)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:418)\n\tat
java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:817)\n\tat java.lang.ClassLoader.loadClass(ClassLoader.java:351)\n\tat java.lang.Class.forName0(Native Method)\n\tat
java.lang.Class.forName(Class.java:348)\n\tat org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:542)\n\t... 32 more\n","code":500}}
 in SearchApiSolrConnection->checkResponse() (line 546 of /var/www/dxstore/sites/all/modules/contrib/search_api_solr/includes/solr_connection.inc).
WD search_api_attachments: SearchApiException: "500" Status: Server Error: Server                                                                                                           [error]
"

Но все-таки все остальные функции поиска и листинга Solr работают нормально, но поиск по вложениям не работает.

Может кто-то Пожалуйста, предложите, где я иду не так.

1 Ответ

0 голосов
/ 03 февраля 2020

В документации по Solr 5.5.5 на странице № 200 упоминается, что «если вы не работаете с предоставленным набором настроек sample_techproducts_configs или data_driven_schema_conf igs, вы должны настроить свой собственный solrconfig. xml, чтобы узнать о содержимом Jar-файла. ExtractingRequestHandler и его зависимости: "

введите описание изображения здесь

Итак, исправив путь к файлу .jar в solrconfig. xml путь в папке conf / Ядро, проблема все еще сохраняется. Но когда я изменил " <lib dir="${**solr.contrib.dir**:../../../..}/contrib/extraction/lib" regex=".*\.jar" />" на <lib dir="${**solr.install.dir**:../../../..}/contrib/extraction/lib" regex=".*\.jar" />, он работал нормально и больше не было ошибок при индексации вложений.

...