Hi The Full stack trace is below, it only happens when there are more then one thread:
Feb 10, 2017 8:44:06 PM org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl callAnalysisComponentProcess(430) SEVERE: Exception occurred org.apache.uima.analysis_engine.AnalysisEngineProcessException at org.apache.ctakes.lvg.ae.LvgAnnotator.process(LvgAnnotator.java:310) 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:396) at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:314) at org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:570) at org.apache.uima.analysis_engine.asb.impl.ASB_impl$AggregateCasIterator.<init>(ASB_impl.java:412) at org.apache.uima.analysis_engine.asb.impl.ASB_impl.process(ASB_impl.java:344) at org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl.processAndOutputNewCASes(AggregateAnalysisEngine_impl.java:265) at org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:269) at org.apache.uima.analysis_engine.impl.MultiprocessingAnalysisEngine_impl.process(MultiprocessingAnalysisEngine_impl.java:199) at org.apache.ctakes.web.client.servlet.DemoServlet.doPost(DemoServlet.java:135) at javax.servlet.http.HttpServlet.service(HttpServlet.java:755) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:684) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:501) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:494) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:982) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1043) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:667) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) at java.lang.Thread.run(Thread.java:745) Caused by: org.apache.uima.analysis_engine.AnalysisEngineProcessException at org.apache.ctakes.lvg.ae.LvgAnnotator.setCanonicalForm(LvgAnnotator.java:372) at org.apache.ctakes.lvg.ae.LvgAnnotator.annotateRange(LvgAnnotator.java:342) at org.apache.ctakes.lvg.ae.LvgAnnotator.process(LvgAnnotator.java:307) ... 35 more Caused by: java.lang.NullPointerException On Fri, Feb 10, 2017 at 10:22 PM, Marshall Schor <[email protected]> wrote: > Hi, > > This exception is being thrown from CTakes, I think. UIMA is "wrapping" > this > exception, and even CTakes is wrapping it. > > Can you post the full stack trace? I'm looking for the lines that would > follow > something like: > "Caused by: java.lang.NullPointerException" which would indicate the > actual > cause, I hope. > > Also, this is just a wild guess, but could you check to be sure you've set > up > the CAS for CTakes to process according to what it requires (I'm not > familiar > with CTakes requirements)? > > -Marshall > > > On 2/10/2017 11:09 AM, shahid ashraf wrote: > > Anything on the previous mail and > > > > *Also i tried the setting up Cas Pool based on descriptor file using > below > > code... when i increase the number of threads from 1 i get following > errors* > > > > public class MyApplication { > > private CasPool mCasPool; > > > > private AnalysisEngine mAnalysisEngine; > > > > public MyApplication() > > { > > //get Resource Specifier from XML file > > XMLInputSource in = new XMLInputSource("MyDescriptor.xml"); > > ResourceSpecifier specifier = > > UIMAFramework.getXMLParser().parseResourceSpecifier(in); > > > > //Create multithreadable AE that will > > //Accept 3 simultaneous requests > > //The 3rd parameter specifies a timeout. > > //When the number of simultaneous requests exceeds 3, > > // additional requests will wait for other requests to finish. > > // This parameter determines the maximum number of milliseconds > > // that a new request should wait before throwing an > > // - a value of 0 will cause them to wait forever. > > mAnalysisEngine = UIMAFramework.produceAnalysisEngine( > specifier,3,0); > > > > //create CAS pool with 3 CAS instances > > mCasPool = new CasPool(3, mAnalysisEngine); > > } > > > > // Notice this is no longer "synchronized" > > public void analyzeDocument(String aDoc) { > > //check out a CAS instance (argument 0 means no timeout) > > CAS cas = mCasPool.getCas(0); > > try { > > //analyze a document > > cas.setDocumentText(aDoc); > > mAnalysisEngine.process(cas); > > doSomethingWithResults(cas); > > } finally { > > //MAKE SURE we release the CAS instance > > mCasPool.releaseCas(cas); > > } > > } > > ... > > } > > > > eb 10, 2017 8:44:06 PM > > org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl > > callAnalysisComponentProcess(430) > > > > SEVERE: Exception occurred > > > > org.apache.uima.analysis_engine.AnalysisEngineProcessException > > > > at org.apache.ctakes.lvg.ae.LvgAnnotator.process( > LvgAnnotator.java:310) > > > > 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:396) > > > > at org.apache.uima.analysis_engine.impl. > PrimitiveAnalysisEngine_impl.processAndOutputNewCASes( > PrimitiveAnalysisEngine_impl.java:314) > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl$ > AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:570) > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl$ > AggregateCasIterator.<init>(ASB_impl.java:412) > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl. > process(ASB_impl.java:344) > > at org.apache.uima.analysis_engine.impl. > AggregateAnalysisEngine_impl.processAndOutputNewCASes( > AggregateAnalysisEngine_impl.java:265)aused > > by: org.apache.uima.analysis_engine.AnalysisEngineProcessException > > > > at > > org.apache.ctakes.lvg.ae.LvgAnnotator.setCanonicalForm( > LvgAnnotator.java:372) > > > > at > > org.apache.ctakes.lvg.ae.LvgAnnotator.annotateRange( > LvgAnnotator.java:342) > > > > at org.apache.ctakes.lvg.ae.LvgAnnotator.process(LvgAnnotator.java:307) > > > > ... 35 more > > Caused by: java.lang.NullPointerException > > > > Feb 10, 2017 8:44:06 PM > > org.apache.uima.analysis_engine.impl.AggregateAnalysisEngine_impl > > processAndOutputNewCASes(273) > > > > SEVERE: Exception occurred > > > > org.apache.uima.analysis_engine.AnalysisEngineProcessException > > > > at org.apache.ctakes.lvg.ae.LvgAnnotator.process( > LvgAnnotator.java:310) > > > > 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:396) > > > > at org.apache.uima.analysis_engine.impl. > PrimitiveAnalysisEngine_impl.processAndOutputNewCASes( > PrimitiveAnalysisEngine_impl.java:314) > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl$ > AggregateCasIterator.processUntilNextOutputCas(ASB_impl.java:570) > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl$ > AggregateCasIterator.<init>(ASB_impl.java:412) > > > > at org.apache.uima.analysis_engine.asb.impl.ASB_impl. > process(ASB_impl.java:344) > > > > at org.apache.uima.analysis_engine.impl. > AggregateAnalysisEngine_impl.processAndOutputNewCASes( > AggregateAnalysisEngine_impl.java:265) > > at > > > > > > > > On Fri, Feb 10, 2017 at 12:12 AM, shahid ashraf <[email protected]> > wrote: > > > >> Hi Folks > >> > >> This is my first mail to the mailing list. I have just started looking > >> into the uima architecture. Currently i am trying few things in ctakes. > I > >> need to use the JCAS pool for multithreading. https://uima. > >> apache.org/d/uimaj-current/tutorials_and_users_guides. > >> html#ugr.tug.applications.multi_threaded > >> I need to know the equivalent of the following while using programmable > >> bluider AE(org.apache.uima.fit.factory.AggregateBuilder;) > >> > >> mAnalysisEngine = UIMAFramework.produceAnalysisEngine(specifier,3,0); > >> > >> Currently i am building aggregate AE like this ... in which i need to > set > >> the property/field to 3 like in above. > >> > >> *In other words the questions is how to use the cas object pool for > >> multiprocessing iusing programmable interface(AggregrateBuilder) > instead of > >> descriptor file approach.* > >> > >> -- > >> with Regards > >> Shahid Ashraf > >> > > > > > > -- with Regards Shahid Ashraf
