[
https://issues.apache.org/jira/browse/UIMA-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17147731#comment-17147731
]
Marshall Schor commented on UIMA-6243:
--------------------------------------
Hi, getting the pear class path isolation to work in UIMA v3 was difficult.
Special case code was developed to enable this when PEARs are being used. But
this code isn't there for other cases (OSGi or the simulated isolation in the
unit test), and getting this to work in these other cases may take some
"invention".
Do you have a use case where PEARs are being used for the classpath isolation,
which isn't working in UIMA v3?
> JCas returns Annotation when asked for a specific subtype
> ---------------------------------------------------------
>
> Key: UIMA-6243
> URL: https://issues.apache.org/jira/browse/UIMA-6243
> Project: UIMA
> Issue Type: Bug
> Components: UIMA
> Affects Versions: 2.10.4SDK
> Reporter: Richard Eckart de Castilho
> Priority: Major
>
> In a specific classloader topology, a fully initialized JCas with theoretic
> access to the JCas wrappers of a given type will not return that type but
> instead returns an instance of {{Annotation}}. This leads to an exception
> like this:
> {code}
> org.apache.uima.analysis_engine.AnalysisEngineProcessException: Annotator
> processing failed.
> at
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:427)
> at
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.innerCall(PrimitiveAnalysisEngine_impl.java:329)
> at
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:321)
> at
> org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:269)
> at
> org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:284)
> at
> org.apache.uima.cas.test.JCasClassLoaderTest.thatTypeSystemCanComeFromItsOwnClassLoader(JCasClassLoaderTest.java:126)
> ... snip ...
> Caused by: java.lang.ClassCastException: org.apache.uima.jcas.tcas.Annotation
> cannot be cast to org.apache.uima.cas.test.Token
> at java.util.Iterator.forEachRemaining(Iterator.java:116)
> at
> org.apache.uima.cas.test.JCasClassLoaderTest$FetchTheTokenAnnotator.process(JCasClassLoaderTest.java:166)
> at
> org.apache.uima.analysis_component.JCasAnnotator_ImplBase.process(JCasAnnotator_ImplBase.java:48)
> at
> org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:411)
> ... 28 more
> {code}
> Looks like this is a UIMAv2 issue only. When running the test against the
> UIMAv3 master (commit 0211057ad), I do not get any ClassCastException.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)