Uhhh... UIMA... and parameter checking... NOT. You're probably missing something, but there is so much stuff.

I have some examples in my e-book that show various errors you can get for missing/incorrect parameters for UIMA:
http://www.lulu.com/us/en/shop/jack-krupansky/solr-4x-deep-dive-early-access-release-7/ebook/product-21203548.html

I never actually connected to a UIMA service, but at least got through the parameter stuff.

-- Jack Krupansky

-----Original Message----- From: mkhordad
Sent: Friday, August 22, 2014 9:21 PM
To: solr-user@lucene.apache.org
Subject: Integrating DictionaryAnnotator and Solr

Hi,

I am trying to integrate DictionaryAnnotator of UIMA to Solr 4.9.0 to find
gene names from a dictionary. So I made the following changes.

1. I Modified OverridingParamsExtServicesAE.xml file as follow:

<delegateAnalysisEngineSpecifiers>:
...
<delegateAnalysisEngine key="DictionaryAnnotator">
     <import name="DictionaryAnnotator"/>
</delegateAnalysisEngine>
...
</delegateAnalysisEngineSpecifiers>:

2. Modified the <flowConstraints> sections for adding DictionaryAnnotator
node:
     <fixedFlow>
       <node>AggregateSentenceAE</node>
       <node>OpenCalaisAnnotator</node>
       <node>TextKeywordExtractionAEDescriptor</node>
       <node>TextLanguageDetectionAEDescriptor</node>
       <node>TextCategorizationAEDescriptor</node>
       <node>TextConceptTaggingAEDescriptor</node>
       <node>TextRankedEntityExtractionAEDescriptor</node>
               <node>DictionaryAnnotator</node>
     </fixedFlow>


3. Added org/apache/uima/desc/DictionaryAnnotator.xml
DictionaryAnnotator.xml

4. Added my dictionary to org/apache/uima/desc/dictionary.xml

5.- Generated the file apache-solr-uima-4.9.jar

6. Added Gene to schema.xml.

7.Added the following lines in solrconfig.xml:

<lib dir="../../../contrib/uima/lib" />

 <lib dir="../../dist/" regex="solr-uima-\d.*\.jar" />

 <lib dir="Path-to/apache-uima/lib" />

<uimaConfig>

     <analysisEngine>DictionaryAnnotator</analysisEngine>

     <fieldMapping>

         <type name="org.apache.uima.DictionaryEntry">

             <map feature="gene" field="gene"/>

         </type>

     </fieldMapping>

 </uimaConfig>



<requestHandler name="/update" class="solr.XmlUpdateRequestHandler">

  <lst name="defaults">

         <str name="update.processor">uima</str>

     </lst>

 <updateRequestProcessorChain name="uima" default="true">

     <processor
class="org.apache.solr.uima.processor.UIMAUpdateRequestProcessorFactory">

         <lst name="uimaConfig">

             <str name="analysisEngine">DictionaryAnnotator</str>



            <bool name="ignoreErrors">false</bool>



              <lst name="analyzeFields">

                 <bool name="merge">false</bool>

                 <arr name="fields">

                     <str>text</str>

                 </arr>

             </lst>

             <lst name="fieldMappings">

                 <lst name="type">

                     <str name="name">org.apache.uima.DictionaryEntry</str>

                     <lst name="mapping">

                         <str name="feature">gene</str>

                         <str name="field">gene</str>

                     </lst>

                 </lst>

             </lst>

         </lst>

     </processor>

     <processor class="solr.LogUpdateProcessorFactory" />

     <processor class="solr.RunUpdateProcessorFactory" />

 </updateRequestProcessorChain>


But I get the following error message when I am truing to import my
documents:

3639 [qtp1023134153-14] ERROR org.apache.solr.core.SolrCore  –
java.lang.NullPointerException

at
org.apache.solr.uima.processor.SolrUIMAConfigurationReader.readAEOverridingParameters(SolrUIMAConfigurationReader.java:101)

at
org.apache.solr.uima.processor.SolrUIMAConfigurationReader.readSolrUIMAConfiguration(SolrUIMAConfigurationReader.java:42)

at
org.apache.solr.uima.processor.UIMAUpdateRequestProcessorFactory.getInstance(UIMAUpdateRequestProcessorFactory.java:53)

at
org.apache.solr.update.processor.UpdateRequestProcessorChain.createProcessor(UpdateRequestProcessorChain.java:204)

at
org.apache.solr.handler.dataimport.DataImportHandler.handleRequestBody(DataImportHandler.java:178)

at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)

at org.apache.solr.core.SolrCore.execute(SolrCore.java:1962)

at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:777)

at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:418)

at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)

at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)

at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)

at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)

at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)

at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)

at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384)

at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)

at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)

at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)

at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)

at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)

at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)

at org.eclipse.jetty.server.Server.handle(Server.java:368)

at
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)

at
org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)

at
org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:953)

at
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1014)

at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)

at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)

at
org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)

at
org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)

at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)

at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)

at java.lang.Thread.run(Thread.java:745)



--
View this message in context: http://lucene.472066.n3.nabble.com/Integrating-DictionaryAnnotator-and-Solr-tp4154627.html Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to