Развертывание QueryParser в Lucene-Surround для Solr - PullRequest
1 голос
/ 01 февраля 2011

Я пытаюсь развернуть QueryParser с Lucene-Surround в Solr (1.4.0)

Мне сказали, что это так же просто, как загрузить JAR и QueryParser с объемным пространством и добавить его в каталог lib в solr.warзатем ссылка на него в solrconfig.xml путем добавления строки

<queryParser name="SurroundQParser" class="org.apache.lucene.queryParser.surround.parser.QueryParser"/>

Когда я это делаю, я получаю эту ошибку

SEVERE: org.apache.solr.common.SolrException: Error Instantiating QParserPlugin,
 org.apache.lucene.queryParser.surround.parser.QueryParser is not a org.apache.s
olr.search.QParserPlugin
        at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:415)
        at org.apache.solr.core.SolrCore.createInitInstance(SolrCore.java:435)
        at org.apache.solr.core.SolrCore.initPlugins(SolrCore.java:1498)
        at org.apache.solr.core.SolrCore.initPlugins(SolrCore.java:1492)
        at org.apache.solr.core.SolrCore.initPlugins(SolrCore.java:1525)
        at org.apache.solr.core.SolrCore.initQParsers(SolrCore.java:1442)
        at org.apache.solr.core.SolrCore.<init>(SolrCore.java:548)
        at org.apache.solr.core.CoreContainer.create(CoreContainer.java:428)
        at org.apache.solr.core.CoreContainer.load(CoreContainer.java:278)
        at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContain
er.java:117)
        at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.ja
va:83)
        at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:99)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:
40)
        at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.ja
va:594)
        at org.mortbay.jetty.servlet.Context.startContext(Context.java:139)
        at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.jav
a:1218)
        at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:
500)
        at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448
)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:
40)
        at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection
.java:147)
        at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHan
dlerCollection.java:161)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:
40)
        at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection
.java:147)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:
40)
        at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:
117)
        at org.mortbay.jetty.Server.doStart(Server.java:210)
        at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:
40)
        at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:929)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        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)

Как мне поступить?

1 Ответ

2 голосов
/ 02 февраля 2011

Я думаю, вам нужно расширить QParserPlugin . Solr Wiki объясняет, как - в основном ваш createParser метод должен возвращать синтаксический анализатор объемного запроса вместо QParser. Пост Марка Миллера предлагает несколько альтернатив.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...