Hello,
         Can ReversedWildcardFilterFactory be used with KeywordTokenizerFactory 
? I get the following error, looks like solr expects 
WhitespaceTokenizerFactory...Can anybody suggest how to rectify it. My schema 
snippet is also given below. Data is extracted via OpenNLP and indexed into 
Solr for performing leading wildcard searches for faceting purposes.

ERROR
--------
HTTP Status 500 - 
org.apache.solr.analysis.WhitespaceTokenizerFactory.create(Ljava/io/Reader;)Lorg/apache/lucene/analysis/Tokenizer;
 java.lang.AbstractMethodError: 
org.apache.solr.analysis.WhitespaceTokenizerFactory.create(Ljava/io/Reader;)Lorg/apache/lucene/analysis/Tokenizer;
 at org.apache.solr.analysis.TokenizerChain.getStream(TokenizerChain.java:69) 
at 
org.apache.solr.analysis.SolrAnalyzer.reusableTokenStream(SolrAnalyzer.java:74) 
at 
org.apache.solr.schema.IndexSchema$SolrIndexAnalyzer.reusableTokenStream(IndexSchema.java:364)
 at 
org.apache.lucene.queryParser.QueryParser.getFieldQuery(QueryParser.java:543) 
at 
org.apache.solr.search.SolrQueryParser.getFieldQuery(SolrQueryParser.java:153) 
at 
org.apache.solr.util.SolrPluginUtils$DisjunctionMaxQueryParser.getFieldQuery(SolrPluginUtils.java:807)
 at 
org.apache.solr.util.SolrPluginUtils$DisjunctionMaxQueryParser.getFieldQuery(SolrPluginUtils.java:794)
 at
 org.apache.lucene.queryParser.QueryParser.Term(QueryParser.java:1425) at 
org.apache.lucene.queryParser.QueryParser.Clause(QueryParser.java:1313) at 
org.apache.lucene.queryParser.QueryParser.Query(QueryParser.java:1241) at 
org.apache.lucene.queryParser.QueryParser.TopLevelQuery(QueryParser.java:1230) 
at org.apache.lucene.queryParser.QueryParser.parse(QueryParser.java:176) at 
org.apache.solr.search.DisMaxQParser.getUserQuery(DisMaxQParser.java:195) at 
org.apache.solr.search.DisMaxQParser.addMainQuery(DisMaxQParser.java:158) at 
org.apache.solr.search.DisMaxQParser.parse(DisMaxQParser.java:74) at 
org.apache.solr.search.QParser.getQuery(QParser.java:131) at 
org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:89)
 at 
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:174)
 at 
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
 at
 org.apache.solr.core.SolrCore.execute(SolrCore.java:1313) at 
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:338) 
at 
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:241)
 at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
 at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
 at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:297)
 at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
 at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632) 
at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577) 
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94) at
 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206) 
at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632) 
at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577) 
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571) 
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080) at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
 at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632) 
at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577) 
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571) 
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080) at 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272) at
 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
 at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
 at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265) at 
com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
 

SCHEMA snippet
-------------------

    <fieldType name="keywordText" class="solr.TextField" sortMissingLast="true" 
omitNorms="true" positionIncrementGap="100">
      <analyzer type="index">        
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.TrimFilterFactory" />
        <filter class="solr.StopFilterFactory" ignoreCase="true" 
words="stopwords.txt" enablePositionIncrements="true"/> 
        <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" 
ignoreCase="true" expand="true" />                           
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>        
      </analyzer>
      <analyzer type="query">
        <tokenizer class="solr.KeywordTokenizerFactory"/>
        <filter class="solr.TrimFilterFactory" />
        <filter class="solr.StopFilterFactory" ignoreCase="true" 
words="stopwords.txt" enablePositionIncrements="true" />        
        <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" 
ignoreCase="true" expand="true" />                          
        <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
      </analyzer>
    </fieldType>

    <field name="person" type="keywordText" indexed="true" stored="true" 
multiValued="true" termVectors="false" termPositions="false" 
termOffsets="false"/>
    <field name="organization" type="keywordText" indexed="true" stored="true" 
multiValued="true" termVectors="false" termPositions="false" 
termOffsets="false"/>
    <field name="location" type="keywordText" indexed="true" stored="true" 
multiValued="true" termVectors="false" termPositions="false" 
termOffsets="false"/>


 
Ravi Kiran Bhaskar


      

Reply via email to