Hello,
I'm not sure if this is the right place to discuss the problem I'm having (I
apologize if not). I created my own Ruta Boolean function based on the example
in the ExampleProject in Ruta. I can use my condition to filter annotations and
mark the matching ones as a certain type. However, I'm getting the exception
below when I subsequently try to use the new type. Here is a simple example:
Declare MyType;
CW { MyBoolCondition() -> MARK(MyType) };
Declare AnotherType;
MyType { -> MARK(AnotherType) };
The last line in my example is generating the following exception. Any help is
highly appreciated.
org.apache.uima.analysis_engine.AnalysisEngineProcessException: Annotator
processing failed.
at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:279)
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:375)
at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:296)
at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:567)
at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:409)
at org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:342)
at
org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:267)
at
org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:267)
at
org.apache.uima.collection.impl.cpm.engine.ProcessingUnit.processNext(ProcessingUnit.java:897)
at
org.apache.uima.collection.impl.cpm.engine.ProcessingUnit.run(ProcessingUnit.java:577)
Caused by: java.lang.NullPointerException
at org.apache.uima.cas.impl.CASImpl.createFS(CASImpl.java:474)
at org.apache.uima.cas.impl.CASImpl.createAnnotation(CASImpl.java:3916)
at
org.apache.uima.ruta.action.AbstractMarkAction.createAnnotation(AbstractMarkAction.java:43)
at org.apache.uima.ruta.action.MarkAction.execute(MarkAction.java:58)
at
org.apache.uima.ruta.rule.AbstractRuleElement.apply(AbstractRuleElement.java:84)
at
org.apache.uima.ruta.rule.RuleElementCaretaker.applyRuleElements(RuleElementCaretaker.java:110)
at
org.apache.uima.ruta.rule.ComposedRuleElement.applyRuleElements(ComposedRuleElement.java:271)
at
org.apache.uima.ruta.rule.AbstractRuleElement.doneMatching(AbstractRuleElement.java:75)
at
org.apache.uima.ruta.rule.ComposedRuleElement.fallback(ComposedRuleElement.java:201)
at
org.apache.uima.ruta.rule.ComposedRuleElement.fallbackContinue(ComposedRuleElement.java:136)
at
org.apache.uima.ruta.rule.RutaRuleElement.continueMatchSomewhereElse(RutaRuleElement.java:180)
at
org.apache.uima.ruta.rule.RutaRuleElement.continueMatch(RutaRuleElement.java:219)
at
org.apache.uima.ruta.rule.RutaRuleElement.startMatch(RutaRuleElement.java:79)
at
org.apache.uima.ruta.rule.ComposedRuleElement.startMatch(ComposedRuleElement.java:58)
at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:47)
at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:40)
at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:29)
at org.apache.uima.ruta.RutaScriptBlock.apply(RutaScriptBlock.java:63)
at org.apache.uima.ruta.RutaModule.apply(RutaModule.java:48)
at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:277)
... 10 more
org.apache.uima.analysis_engine.AnalysisEngineProcessException: Annotator
processing failed.
at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:279)
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:375)
at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:296)
at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:567)
at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:409)
at org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:342)
at
org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:267)
at
org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:267)
at
org.apache.uima.collection.impl.cpm.engine.ProcessingUnit.processNext(ProcessingUnit.java:897)
at
org.apache.uima.collection.impl.cpm.engine.ProcessingUnit.run(ProcessingUnit.java:577)
Caused by: java.lang.NullPointerException
at org.apache.uima.cas.impl.CASImpl.createFS(CASImpl.java:474)
at org.apache.uima.cas.impl.CASImpl.createAnnotation(CASImpl.java:3916)
at
org.apache.uima.ruta.action.AbstractMarkAction.createAnnotation(AbstractMarkAction.java:43)
at org.apache.uima.ruta.action.MarkAction.execute(MarkAction.java:58)
at
org.apache.uima.ruta.rule.AbstractRuleElement.apply(AbstractRuleElement.java:84)
at
org.apache.uima.ruta.rule.RuleElementCaretaker.applyRuleElements(RuleElementCaretaker.java:110)
at
org.apache.uima.ruta.rule.ComposedRuleElement.applyRuleElements(ComposedRuleElement.java:271)
at
org.apache.uima.ruta.rule.AbstractRuleElement.doneMatching(AbstractRuleElement.java:75)
at
org.apache.uima.ruta.rule.ComposedRuleElement.fallback(ComposedRuleElement.java:201)
at
org.apache.uima.ruta.rule.ComposedRuleElement.fallbackContinue(ComposedRuleElement.java:136)
at
org.apache.uima.ruta.rule.RutaRuleElement.continueMatchSomewhereElse(RutaRuleElement.java:180)
at
org.apache.uima.ruta.rule.RutaRuleElement.continueMatch(RutaRuleElement.java:219)
at
org.apache.uima.ruta.rule.RutaRuleElement.startMatch(RutaRuleElement.java:79)
at
org.apache.uima.ruta.rule.ComposedRuleElement.startMatch(ComposedRuleElement.java:58)
at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:47)
at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:40)
at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:29)
at org.apache.uima.ruta.RutaScriptBlock.apply(RutaScriptBlock.java:63)
at org.apache.uima.ruta.RutaModule.apply(RutaModule.java:48)
at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:277)
... 10 more
Thanks,
Wassim...