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.