Файл образца HTML не индексируется в Solr 8.8

Я пытаюсь проиндексировать exampledocs в папке с примерами с помощью SimplePostTool в Windows 10, используя solr 8.8. Все документы индексируются, кроме sample.html. Для этого файла я получаю следующую ошибку:

PS C:\solr-8.8.0> java -jar -Dc=gettingstarted -Dauto example\exampledocs\post.jar example\exampledocs\sample.html
SimplePostTool version 5.0.0
Posting files to [base] url http://localhost:8983/solr/gettingstarted/update...
Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log
POSTing file sample.html (text/html) to [base]/extract
SimplePostTool: WARNING: Solr returned an error #404 (Not Found) for url: http://localhost:8983/solr/gettingstarted/update/extract?resource.name=C%3A%5Csolr-8.8.0%5Cexample%5Cexampledocs%5Csample.html&literal.id=C%3A%5Csolr-8.8.0%5Cexample%5Cexampledocs%5Csample.html
SimplePostTool: WARNING: Response: <html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>Error 404 Not Found</title>
</head>
<body><h2>HTTP ERROR 404 Not Found</h2>
<table>
<tr><th>URI:</th><td>/solr/gettingstarted/update/extract</td></tr>
<tr><th>STATUS:</th><td>404</td></tr>
<tr><th>MESSAGE:</th><td>Not Found</td></tr>
<tr><th>SERVLET:</th><td>default</td></tr>
</table>

</body>
</html>
SimplePostTool: WARNING: IOException while reading response: java.io.FileNotFoundException: http://localhost:8983/solr/gettingstarted/update/extract?resource.name=C%3A%5Csolr-8.8.0%5Cexample%5Cexampledocs%5Csample.html&literal.id=C%3A%5Csolr-8.8.0%5Cexample%5Cexampledocs%5Csample.html
1 files indexed.
COMMITting Solr index changes to http://localhost:8983/solr/gettingstarted/update...
Time spent: 0:00:00.086

Однако индексирование json и всех других типов файлов без проблем. Например:

PS C:\solr-8.8.0> java -jar -Dc=gettingstarted -Dauto example\exampledocs\post.jar example\exampledocs\books.json
SimplePostTool version 5.0.0
Posting files to [base] url http://localhost:8983/solr/gettingstarted/update...
Entering auto mode. File endings considered are xml,json,jsonl,csv,pdf,doc,docx,ppt,pptx,xls,xlsx,odt,odp,ods,ott,otp,ots,rtf,htm,html,txt,log
POSTing file books.json (application/json) to [base]/json/docs
1 files indexed.
COMMITting Solr index changes to http://localhost:8983/solr/gettingstarted/update...

Просто следуйте этому руководству: https://lucene.apache.org/solr/guide/8_8/post-tool.html#post-tool-windows-support


person user2547973    schedule 17.02.2021    source источник


Ответы (1)


Обработчик запроса на извлечение, который позволяет индексировать расширенные документы, должен быть включен, прежде чем его можно будет использовать. Если вы посмотрите на пути в обоих ваших запросах, вы увидите, что ваш первый запрос идет на /extract и дает 404, а ваш второй запрос идет на /update и работает.

Вы можете найти описание как включить и настроить конечную точку в документации по Solr:

Если вы не работаете с примером конфигурации, jar-файлы, необходимые для использования Solr Cell, не будут загружаться автоматически. Вам нужно будет настроить свой solrconfig.xml, чтобы найти ExtractingRequestHandler и его зависимости:

<lib dir="${solr.install.dir:../../..}/contrib/extraction/lib" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../..}/dist/" regex="solr-cell-\d.*\.jar" />

Затем вы можете настроить ExtractingRequestHandler в solrconfig.xml. Ниже приведена конфигурация по умолчанию в _default configset Solr, которую вы можете изменить по мере необходимости:

<requestHandler name="/update/extract"
                startup="lazy"
                class="solr.extraction.ExtractingRequestHandler" >
  <lst name="defaults">
    <str name="lowernames">true</str>
    <str name="fmap.content">_text_</str>
  </lst>
</requestHandler>
person MatsLindh    schedule 17.02.2021
comment
Спасибо, Матс. Просто следуя руководству, я не заметил, чтобы изменение файла конфигурации было частью примера начала работы. Все остальные форматы файлов просто работали. - person user2547973; 18.02.2021
comment
Я скопировал файл solrconf.xml из установки solr 7.7.3 в папку getstarted / conf и перезапустил сервер, и индексация заработала. Сравнивая файлы конфигурации между версиями, кажется, что приведенный выше код был исключен из файла 8.8.0 _default / config / solrconfig.xml. - person user2547973; 22.02.2021