我正在開發Apache UIMA + Apache Solr集成。首先我已將Apache UIMA與eclipse集成。我在eclipse中實現了NOUN短語註釋器,並且運行了幾個例子。Apache UIMA + Apache Solr集成名詞短語註釋器
它工作得很好,並通過查找名詞來給出準確的結果。
現在我試圖用Solr實現UIMA。我也跟着下面的鏈接是相同的:
https://wiki.apache.org/solr/SolrUIMA
我已出口工作的Eclipse項目的JAR文件中的Apache Solr實現lib目錄,包括其他必要的jar文件。
這裏是我的solrconfig XML的變化:
<lib dir="../../../contrib/uima/lib" />
<lib dir="../../../contrib/uima/lucene-libs" />
<lib dir="../../../dist/" regex="solr-uima-\d.*\.jar" />
<lib dir="C:\apache-uima\lib" />
<requestHandler name="/update" class="solr.UpdateRequestHandler">
<lst name="defaults">
<str name="update.processor">uima</str>
</lst>
</requestHandler>
<updateRequestProcessorChain name="uima" default="true">
<processor class="org.apache.solr.uima.processor.UIMAUpdateRequestProcessorFactory">
<lst name="uimaConfig">
<lst name="runtimeParameters">
</lst>
<str name="analysisEngine">/desc/NounPhraseAnnotator.xml</str>
<bool name="ignoreErrors">false</bool>
<str name="logField">id</str>
<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.tutorial.NounPhraseAnnotation</str>
<lst name="mapping">
<str name="feature">nounText</str>
<str name="field">uimanounphrase</str>
</lst>
</lst>
</lst>
</lst>
</processor>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
Schema.xml的變化:
<field name="uimanounphrase" type="string" indexed="true" stored="true" multiValued="true" required="false"/>
然後我就收錄了一些文件和Solr的運行實例。但是當我執行查詢時,名詞不會進入用戶語言字段。空值顯示在該字段中。