Hi everyone,
I am using the PEAR Api to install a AAE and run it. The first time it
runs everything is fine.
The second time it runs I get this exception:
Apr 22, 2009 11:08:42 AM
org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl
processAndOutputNewCASes(269)
SEVERE: Exception occurred
org.apache.uima.analysis_engine.AnalysisEngineProcessException: The
method CasManager.defineCasPool() was called twice by the same Analysis
Engine (/Multiplier/).
at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentNext(PrimitiveAnalysisEngine_impl.java:516)
at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl$AnalysisComponentCasIterator.next(PrimitiveAnalysisEngine_impl.java:594)
at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:558)
at
org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:398)
at
org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:331)
at
org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:261)
at
org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:218)
at
org.apache.uima.analysis_engine.impl.PearAnalysisEngineWrapper.processAndOutputNewCASes(PearAnalysisEngineWrapper.java:273)
at
org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:218)
at
dk.infopaq.trainserver.TrainingEngine$TrainingJob.run(TrainingEngine.java:229)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.apache.uima.UIMARuntimeException: The method
CasManager.defineCasPool() was called twice by the same Analysis Engine
(/Multiplier/).
at
org.apache.uima.resource.impl.CasManager_impl.defineCasPool(CasManager_impl.java:181)
at
org.apache.uima.resource.impl.CasManager_impl.defineCasPool(CasManager_impl.java:161)
at
org.apache.uima.impl.UimaContext_ImplBase.getEmptyCas(UimaContext_ImplBase.java:565)
at
org.apache.uima.analysis_component.CasMultiplier_ImplBase.getEmptyCAS(CasMultiplier_ImplBase.java:109)
at
dk.infopaq.nlp.repository.connector.HBaseReadCasMultiplier.next(HBaseReadCasMultiplier.java:123)
at
org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentNext(PrimitiveAnalysisEngine_impl.java:489)
... 12 more
For me it looks like that I have to do some cleanup after the first run,
but which methods must be called
after I am done with processing ?
Currently I only call collectionProcessigComplete() on my AE. I tried to
call destory(), but that
did not help. The AAE contains a CasMultiplier and thats also the AE in
which it fails inside getEmptyCAS().
Thanks,
Jörn