This NPE is coming from your code. What line is 174?
What is thread_id variable?


On Tue, Oct 8, 2013 at 8:08 AM, mamouros <csst0...@yahoo.gr> wrote:

> *What's my error???
> Why do I get the java.lang.NullPointerException ???*
>
> *I am using this function to terminate a route that is run by a different
> thread than the main one that calls this function:*
>
> private void terminate(String routeId, int index) {
>         try {
>                 System.out.println("%%%%%%%%% camelContext.stopRoute(" +
> routeId +
> ");" + " :: THREAD: " + Thread.currentThread().getId());
>                 camelContext.stopRoute(routeId);
>                 camelContext.removeRoute(routeId);
>                 thread_id.get(index).join();
>         } catch (Exception e) {
>                 System.out.println("%%%%%%%%% EXCEPTION in terminate()" +
> " :: THREAD: " +
> Thread.currentThread().getId());
>                 e.printStackTrace();
>         }
> }
>
>
> *Route is running here:*
>
> $$$$$$$$$ Receiver :: account_id: 7 ::
> smpp://8000800666@123.123.123.123:1111?password=123456 :: *THREAD: 579
> *
>
>
> karaf@root> route-list
> Route Id             Context Name         Status
> [retrievingAccounts] [ReceivingContext  ] [Started           ]
> [*receiving:8000800666*] [ReceivingContext  ] [Started           ]
>
>
> *Then I call terminate(receiving:8000800666); but I get this exception:
> java:174 is camelContext.stopRoute(routeId); from the terminate function
> above*
>
>
> %%%%%%%%% camelContext.stopRoute(*receiving:8000800666*); :: *THREAD: 573*
> %%%%%%%%% EXCEPTION in terminate() :: THREAD: 573
> java.lang.NullPointerException
>         at org.appart.smpp.SmsReceiver.terminate(SmsReceiver.java:174)
>         at org.appart.smpp.SmsReceiver.creatingRoutes(SmsReceiver.java:91)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
>
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>         at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:606)
>         at
> org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:391)
>         at
> org.apache.camel.component.bean.MethodInfo$1.doProceed(MethodInfo.java:278)
>         at
> org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:251)
>         at
>
> org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:161)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
>         at
>
> org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:67)
>         at
>
> org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:101)
>         at
>
> org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:71)
>         at
>
> org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
>         at
>
> org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:122)
>         at
>
> org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:298)
>         at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:117)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
>         at
>
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
>         at
>
> org.apache.camel.processor.interceptor.BacklogTracerInterceptor.process(BacklogTracerInterceptor.java:84)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
>         at
>
> org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
>         at
>
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:390)
>         at
>
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:273)
>         at
>
> org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
>         at
>
> org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:335)
>         at
>
> org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:46)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
>         at
>
> org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
>         at
>
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
>         at
>
> org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
>         at
>
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:72)
>         at
>
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
>         at
>
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)
>         at
>
> org.apache.camel.component.sql.SqlConsumer.processBatch(SqlConsumer.java:164)
>         at
>
> org.apache.camel.component.sql.SqlConsumer$1.doInPreparedStatement(SqlConsumer.java:120)
>         at
>
> org.apache.camel.component.sql.SqlConsumer$1.doInPreparedStatement(SqlConsumer.java:83)
>         at
> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:589)
>         at
> org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:617)
>         at
> org.apache.camel.component.sql.SqlConsumer.poll(SqlConsumer.java:83)
>         at
>
> org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:141)
>         at
>
> org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:91)
>         at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>         at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
>         at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
>         at
>
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
>         at
>
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>         at
>
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>         at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>         at java.lang.Thread.run(Thread.java:724)
>
>
>
>
>
>
>
> --
> View this message in context:
> http://camel.465427.n5.nabble.com/Problem-with-stopping-route-camelContext-stopRoute-String-routeId-throws-java-lang-NullPointerExceptn-tp5741141.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



-- 
*Christian Posta*
http://www.christianposta.com/blog
twitter: @christianposta

Reply via email to