uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephan Zednik <zedn...@rpi.edu>
Subject Re: Document Analyzer cannot find DictionaryResource_impl from ConceptMapper
Date Wed, 02 Dec 2015 16:18:29 GMT
The org.apache.uima.conceptMapper.support.dictionaryResource.DictionaryResource_impl.class
is in the annotator JAR installed to

/opt/apache-uima/test/ConceptMapper/lib/uima-an-conceptMapper.jar

I believe the issue is that the Document Analyzer application does not have this JAR on it’s
classpath.

I added /opt/apache-uima/test/ConceptMapper/lib/uima-an-conceptMapper.jar to my CLASSPATH
environment variable and was able to successfully run the Document Analyzer application.

My component metadata/install.xml is the following:

<?xml version="1.0" encoding="UTF-8"?>
<COMPONENT_INSTALLATION_DESCRIPTOR>
	<OS>
		<NAME>Mac OS X</NAME>
	</OS>
	<TOOLKITS>
		<JDK_VERSION>1.8.0_45</JDK_VERSION>
	</TOOLKITS>
	<UIMA_FRAMEWORK>
	</UIMA_FRAMEWORK>
	<SUBMITTED_COMPONENT>
		<ID>ConceptMapper</ID>
		<NAME></NAME>
		<DESC>/opt/apache-uima/test/ConceptMapper/desc/analysis_engine/primitive/ConceptMapperOffsetTokenizer.xml</DESC>
		<DEPLOYMENT>standard</DEPLOYMENT>
		<SERVICE_COMMAND></SERVICE_COMMAND>
		<SERVICE_WORKING_DIR></SERVICE_WORKING_DIR>
		<SERVICE_COMMAND_ARGS>
		</SERVICE_COMMAND_ARGS>
	</SUBMITTED_COMPONENT>
	<INSTALLATION>
		<PROCESS>
			<ACTION>set_env_variable</ACTION>
			<PARAMETERS>
				<VAR_VALUE>/opt/apache-uima/test/ConceptMapper/lib/uima-an-conceptMapper.jar</VAR_VALUE>
				<COMMENTS>component classpath setting</COMMENTS>
				<VAR_NAME>classpath</VAR_NAME>
			</PARAMETERS>
		</PROCESS>
		<PROCESS>
			<ACTION>set_env_variable</ACTION>
			<PARAMETERS>
				<VAR_VALUE>/opt/apache-uima/test/ConceptMapper/resources</VAR_VALUE>
				<COMMENTS>component uima.datapath setting</COMMENTS>
				<VAR_NAME>uima.datapath</VAR_NAME>
			</PARAMETERS>
		</PROCESS>
	</INSTALLATION>
</COMPONENT_INSTALLATION_DESCRIPTOR>

Stephan Zednik
zednis2@rpi.edu

“Why not change the world?"

> On Dec 2, 2015, at 7:29 AM, Marshall Schor <msa@schor.com> wrote:
> 
> It might be this simple:
> 
> The error message says it can't find the resource:
> 
> org.apache.uima.conceptMapper.support.dictionaryResource.DictionaryResource_impl
> 
> Your Jar dump at the bottom shows the Jar has
> 
> DictionaryResource_impl.xml
> 
> So, perhaps you need to put this resource in subdirectories so that it's found at org.apache...
etc., or you maybe could change the xml descriptor which specifies where this resource is,
eliminating the "org.apache..." prefix in front of DictionaryResource_impl.
> 
> This is just a shotgun guess - but maybe worth a try.
> 
> -Marshall 
> 
> 
> On 11/30/2015 4:40 PM, Stephan Zednik wrote:
>> Hi,
>> 
>> I am having trouble running the ConceptMapper annotator via the Document Analyzer
application.
>> 
>> UIMA version: 2.8.1
>> github fork of UIMA-addons: https://github.com/zednis/uima-addons
>> java: 1.8.0_45
>> 
>> I have made slight updates to the add-on annotator pom files so they will successfully
build with Java 8.
>> 
>> I also updated the imports of the ConceptMapperOffsetTokenizer.xml to be references
to XML files in the same directory (see https://github.com/zednis/uima-addons/blob/trunk/ConceptMapper/desc/analysis_engine/primitive/ConceptMapperOffsetTokenizer.xml)
>> 
>> I built a PEAR archive of the ConceptMapper annotator using `mvn package` and I used
$UIMA_HOME/bin/runPearInstaller.sh to install the ConceptMapper annotator at /opt/apache-uima/test/ConceptMapper.
>> 
>> I am attempting to use the ConceptMapper annotator with the Document Analyzer application.
 I have updated the fileUrl for the dictionary to file:///opt/apache-uima/test/ConceptMapper/resources/dict/testDict.xml
in the installed annotator.
>> 
>> I have specified the following Analysis Engine descriptor location: 
>> 
>> /opt/apache-uima/test/ConceptMapper/desc/analysis_engine/primitive/ConceptMapperOffsetTokenizer.xml
>> 
>> When I run the document analyzer I get the following stacktrace:
>> 
>> $ /opt/apache-uima/bin/documentAnalyzer.sh 
>> org.apache.uima.resource.ResourceInitializationException: The class org.apache.uima.conceptMapper.support.dictionaryResource.DictionaryResource_impl
could not be found. (Descriptor: file:/opt/apache-uima/test/ConceptMapper/desc/analysis_engine/primitive/ConceptMapperOffsetTokenizer.xml)
>> 	at org.apache.uima.resource.impl.ResourceManager_impl.registerResource(ResourceManager_impl.java:603)
>> 	at org.apache.uima.resource.impl.ResourceManager_impl.initializeExternalResources(ResourceManager_impl.java:457)
>> 	at org.apache.uima.resource.Resource_ImplBase.initialize(Resource_ImplBase.java:193)
>> 	at org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.initialize(AnalysisEngineImplBase.java:157)
>> 	at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.initialize(PrimitiveAnalysisEngine_impl.java:130)
>> 	at org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
>> 	at org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
>> 	at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
>> 	at org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:407)
>> 	at org.apache.uima.analysis_engine.asb.impl.ASB_impl.setup(ASB_impl.java:256)
>> 	at org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initASB(AggregateAnalysisEngine_impl.java:429)
>> 	at org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initializeAggregateAnalysisEngine(AggregateAnalysisEngine_impl.java:373)
>> 	at org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.initialize(AggregateAnalysisEngine_impl.java:186)
>> 	at org.apache.uima.impl.AnalysisEngineFactory_impl.produceResource(AnalysisEngineFactory_impl.java:94)
>> 	at org.apache.uima.impl.CompositeResourceFactory_impl.produceResource(CompositeResourceFactory_impl.java:62)
>> 	at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:279)
>> 	at org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:371)
>> 	at org.apache.uima.tools.docanalyzer.DocumentAnalyzer.runProcessingThread(DocumentAnalyzer.java:1223)
>> 	at org.apache.uima.tools.docanalyzer.DocumentAnalyzer$ProcessingThread.run(DocumentAnalyzer.java:1332)
>> Caused by: java.lang.ClassNotFoundException: org.apache.uima.conceptMapper.support.dictionaryResource.DictionaryResource_impl
>> 	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>> 	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
>> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>> 	at java.lang.Class.forName0(Native Method)
>> 	at java.lang.Class.forName(Class.java:264)
>> 	at org.apache.uima.resource.impl.ResourceManager_impl.registerResource(ResourceManager_impl.java:600)
>> 	... 18 more
>> 
>> What confuses me about this is that the org.apache.uima.conceptMapper.support.dictionaryResource.DictionaryResource_impl
class is in the installed annotator jarfile (uima-an-conceptMapper.jar).
>> 
>> $ jar tf /opt/apache-uima/test/ConceptMapper/lib/uima-an-conceptMapper.jar | grep
DictionaryResource_impl
>> org/apache/uima/conceptMapper/support/dictionaryResource/CompiledDictionaryResource_impl.class
>> org/apache/uima/conceptMapper/support/dictionaryResource/DictionaryResource_impl$1.class
>> org/apache/uima/conceptMapper/support/dictionaryResource/DictionaryResource_impl$DictEntriesByLength_impl$ReverseOrderIntegerComparator.class
>> org/apache/uima/conceptMapper/support/dictionaryResource/DictionaryResource_impl$DictEntriesByLength_impl.class
>> org/apache/uima/conceptMapper/support/dictionaryResource/DictionaryResource_impl$DictEntriesImpl.class
>> org/apache/uima/conceptMapper/support/dictionaryResource/DictionaryResource_impl$DictEntryImpl.class
>> org/apache/uima/conceptMapper/support/dictionaryResource/DictionaryResource_impl$DictLoader.class
>> org/apache/uima/conceptMapper/support/dictionaryResource/DictionaryResource_impl.class
>> 
>> Any ideas why this class would not be found by the document analyzer even though
it is in the jar?
>> 
>> Thanks,
>> 
>> Stephan Zednik
>> zednis2@rpi.edu
>> 
> 


Mime
View raw message