3

SolrのSuggesterコンポーネントを使用してみましたが、例外が発生しますUnknown Search Component: spellcheck。私はsolrバージョン3.6を使用しています。変更したsolrconfig.xmlのでこんな感じ

<searchComponent class="solr.SpellCheckComponent" name="suggester">
 <lst name="spellchecker">
      <str name="name">suggester</str>
      <str name="field">name</str>
      <str name="classname">org.apache.solr.spelling.suggest.Suggester</str>
      <str name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookup</str>
      <float name="threshold">0.005</float>
      <str name="buildOnCommit">true</str>
      <str name="spellcheckIndexDir">spellchecker</str>
 </lst> 
</searchComponent>

<requestHandler class="org.apache.solr.handler.component.SearchHandler" name="/suggester">
  <lst name="defaults">
  <str name="spellcheck">true</str>
  <str name="spellcheck.dictionary">suggester</str>
  <str name="spellcheck.count">10</str>
  </lst>
  <arr name="components">
  <str>suggester</str>
  </arr>
</requestHandler>

これで保存してsolrを起動しましたが、500エラーが発生します。このような長いスタックトレースがあります

HTTP Status 500 - Severe errors in solr configuration. Check your log files for more detailed information on what may be wrong. If you want solr to continue after configuration errors, change: <abortOnConfigurationError>false</abortOnConfigurationError> in solr.xml ------------------------------------------------------------- org.apache.solr.common.SolrException: No cores were created, please check the logs for errors at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:172) at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:96) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295) at 

---たくさんの行---

およびその他

Caused by: org.apache.solr.common.SolrException: Unknown Search Component: spellcheck at org.apache.solr.core.SolrCore.getSearchComponent(SolrCore.java:893) at org.apache.solr.handler.component.SearchHandler.inform(SearchHandler.java:118) at org.apache.solr.core.SolrResourceLoader.inform(SolrResourceLoader.java:527) at org.apache.solr.core.SolrCore.<init>(SolrCore.java:594) ... 32 more

スタックトレースによると、Solrはspellcheckコンポーネントを見つけることができませんが、Solr wikiによると、このコンポーネントにはSolrバージョン>1.4が付属しています。

4

1 に答える 1

2

検索コンポーネントsuggesterに名前を付けたようですが、requestHandlerがそれを正しく参照しているため、問題が発生している場所ではない可能性があります。solrconfig.xmlの残りの部分で、他のrequestHandlerspellcheckがそのlast-componentsセクションまたは他の場所で指定されたコンポーネントを参照しているかどうかを確認できますか?その名前のコンポーネントを見つけることができなくなったため、エラーがスローされます(名前がに変更されましたsuggester)。

solrconfigには、事前に構成された検索ハンドラーが多数付属しているため、1つのアイテムのデフォルト名を変更すると、それを参照するハンドラーで問題が発生する可能性があります。

于 2012-05-13T15:35:56.260 に答える