You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Marios Trivizas (JIRA)" <ji...@apache.org> on 2014/01/24 12:05:37 UTC

[jira] [Updated] (CAMEL-7151) camel-sjms NullPointerException when adding new route with Sjms as producer.

     [ https://issues.apache.org/jira/browse/CAMEL-7151?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marios Trivizas updated CAMEL-7151:
-----------------------------------

    Description: 
The following exception is thrown when adding new route programmatically with Sjms as producer:

java.lang.NullPointerException
	at java.util.concurrent.ArrayBlockingQueue.checkNotNull(ArrayBlockingQueue.java:145)
	at java.util.concurrent.ArrayBlockingQueue.offer(ArrayBlockingQueue.java:296)
	at java.util.AbstractQueue.add(AbstractQueue.java:95)
	at java.util.concurrent.ArrayBlockingQueue.add(ArrayBlockingQueue.java:283)
	at org.apache.camel.component.sjms.jms.ObjectPool.fillPool(ObjectPool.java:55)
	at org.apache.camel.component.sjms.SjmsProducer.doStart(SjmsProducer.java:139)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:407)
	at org.apache.camel.impl.ProducerCache.acquireProducer(ProducerCache.java:123)
	at org.apache.camel.processor.SendProcessor.doStart(SendProcessor.java:191)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.MulticastProcessor.doStart(MulticastProcessor.java:984)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.processor.FilterProcessor.doStart(FilterProcessor.java:80)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.ChoiceProcessor.doStart(ChoiceProcessor.java:171)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.MulticastProcessor.doStart(MulticastProcessor.java:984)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.processor.FilterProcessor.doStart(FilterProcessor.java:80)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.impl.RouteService.startChildService(RouteService.java:329)
	at org.apache.camel.impl.RouteService.warmUp(RouteService.java:158)
	at org.apache.camel.impl.DefaultCamelContext.doWarmUpRoutes(DefaultCamelContext.java:2109)
	at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2039)
	at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2061)
	at org.apache.camel.impl.DefaultCamelContext.startRouteService(DefaultCamelContext.java:1938)
	at org.apache.camel.impl.DefaultCamelContext.startRoute(DefaultCamelContext.java:772)
	at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:1914)
	at org.apache.camel.impl.DefaultCamelContext.addRouteDefinitions(DefaultCamelContext.java:707)
	at org.apache.camel.builder.RouteBuilder.populateRoutes(RouteBuilder.java:337)
	at org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:264)
	at org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:669)
	at de.groupon.jms.DynamicRoutesManager.addRoute(DynamicRoutesManager.java:178)

Here is my code:
{code}
public static RouteBuilder buildRoute(final DynamicRoute route, final CamelContext camelContext, final boolean autoStartup) throws Exception {
		InitialContext ic = getInitialContext(route.getSourceEndpoint().getHost(), route.getSourceEndpoint().getJndiPort());
		ConnectionFactory srcConnectionFactory = (ConnectionFactory)ic.lookup("/connectionFactory/local/" + route.getSourceEndpoint().getJndiConnectionFactoryName());
		((HornetQJMSConnectionFactory)srcConnectionFactory).setReconnectAttempts(-1);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setRetryInterval(1000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setConnectionTTL(120000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setClientFailureCheckPeriod(2000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setCallTimeout(60000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setConsumerWindowSize(4194304);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setInitialConnectAttempts(-1);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setUseGlobalPools(false);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setScheduledThreadPoolMaxSize(5);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setThreadPoolMaxSize(5);
		camelContext.addComponent(route.getSourceEndpoint().getName(), JmsComponent.jmsComponentAutoAcknowledge(srcConnectionFactory));
		ic.close();

		RouteBuilder newRouteBuilder;
		JmsEndpoint dstEndpoint = (JmsEndpoint) route.getDestinationEndpoint();
		ic = getInitialContext(dstEndpoint.getHost(), dstEndpoint.getJndiPort());
		ConnectionFactory dstConnectionFactory = (ConnectionFactory)ic.lookup("/connectionFactory/local/" + dstEndpoint.getJndiConnectionFactoryName());
		((HornetQJMSConnectionFactory)dstConnectionFactory).setReconnectAttempts(-1);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setRetryInterval(1000);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setConnectionTTL(120000);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setClientFailureCheckPeriod(2000);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setCallTimeout(60000);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setConsumerWindowSize(4194304);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setInitialConnectAttempts(-1);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setUseGlobalPools(false);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setScheduledThreadPoolMaxSize(5);
		((HornetQJMSConnectionFactory)dstConnectionFactory).setThreadPoolMaxSize(5);
		SjmsComponent sjms = new SjmsComponent();
		sjms.setConnectionFactory(dstConnectionFactory);
		camelContext.addComponent(dstEndpoint.getName(), sjms);
		ic.close();

		newRouteBuilder = new RouteBuilder() {
			@Override
			public void configure() {
				errorHandler(deadLetterChannel("log:de.groupon.jms.route.deadletter." + route.getName() + "?level=ERROR&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false").maximumRedeliveries(3).redeliveryDelay(500)
						.retryAttemptedLogLevel(LoggingLevel.WARN).retriesExhaustedLogLevel(LoggingLevel.ERROR)
						.log("de.groupon.jms.route.error." + route.getName()));
				from(route.getSourceEndpoint().getCamelUri()).routeId(route.getName()).autoStartup(autoStartup)
					.filter().method(route.getFilterChain(), "filterMessage")
					.process(route.getTransformer())
					.choice().when(body().isNotNull())
						.to(ExchangePattern.InOnly, route.getDestinationEndpoint().getCamelUri())
						.to("log:de.groupon.jms.route." + route.getName() + "?level=INFO&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false")
						.stop()
					.otherwise()
						.stop();
			}
		};
	}
	return newRouteBuilder;
}
{code}

  was:
The following exception is thrown when adding new route programmatically with Sjms as producer:

java.lang.NullPointerException
	at java.util.concurrent.ArrayBlockingQueue.checkNotNull(ArrayBlockingQueue.java:145)
	at java.util.concurrent.ArrayBlockingQueue.offer(ArrayBlockingQueue.java:296)
	at java.util.AbstractQueue.add(AbstractQueue.java:95)
	at java.util.concurrent.ArrayBlockingQueue.add(ArrayBlockingQueue.java:283)
	at org.apache.camel.component.sjms.jms.ObjectPool.fillPool(ObjectPool.java:55)
	at org.apache.camel.component.sjms.SjmsProducer.doStart(SjmsProducer.java:139)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:407)
	at org.apache.camel.impl.ProducerCache.acquireProducer(ProducerCache.java:123)
	at org.apache.camel.processor.SendProcessor.doStart(SendProcessor.java:191)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.MulticastProcessor.doStart(MulticastProcessor.java:984)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.processor.FilterProcessor.doStart(FilterProcessor.java:80)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.ChoiceProcessor.doStart(ChoiceProcessor.java:171)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.MulticastProcessor.doStart(MulticastProcessor.java:984)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.processor.FilterProcessor.doStart(FilterProcessor.java:80)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
	at org.apache.camel.impl.RouteService.startChildService(RouteService.java:329)
	at org.apache.camel.impl.RouteService.warmUp(RouteService.java:158)
	at org.apache.camel.impl.DefaultCamelContext.doWarmUpRoutes(DefaultCamelContext.java:2109)
	at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2039)
	at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2061)
	at org.apache.camel.impl.DefaultCamelContext.startRouteService(DefaultCamelContext.java:1938)
	at org.apache.camel.impl.DefaultCamelContext.startRoute(DefaultCamelContext.java:772)
	at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:1914)
	at org.apache.camel.impl.DefaultCamelContext.addRouteDefinitions(DefaultCamelContext.java:707)
	at org.apache.camel.builder.RouteBuilder.populateRoutes(RouteBuilder.java:337)
	at org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:264)
	at org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:669)
	at de.groupon.jms.DynamicRoutesManager.addRoute(DynamicRoutesManager.java:178)

Here is my code:
{code}
public static RouteBuilder buildRoute(final DynamicRoute route, final CamelContext camelContext, final boolean autoStartup) throws Exception {
		InitialContext ic = getInitialContext(route.getSourceEndpoint().getHost(), route.getSourceEndpoint().getJndiPort());
		ConnectionFactory srcConnectionFactory = (ConnectionFactory)ic.lookup("/connectionFactory/local/" + route.getSourceEndpoint().getJndiConnectionFactoryName());
		((HornetQJMSConnectionFactory)srcConnectionFactory).setReconnectAttempts(-1);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setRetryInterval(1000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setConnectionTTL(120000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setClientFailureCheckPeriod(2000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setCallTimeout(60000);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setConsumerWindowSize(4194304);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setInitialConnectAttempts(-1);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setUseGlobalPools(false);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setScheduledThreadPoolMaxSize(5);
		((HornetQJMSConnectionFactory)srcConnectionFactory).setThreadPoolMaxSize(5);
		camelContext.addComponent(route.getSourceEndpoint().getName(), JmsComponent.jmsComponentAutoAcknowledge(srcConnectionFactory));
		ic.close();

		RouteBuilder newRouteBuilder;
		if (route.getDestinationEndpoint().isNull()) {
			newRouteBuilder = new RouteBuilder() {
				@Override
				public void configure() {
					errorHandler(deadLetterChannel("log:de.groupon.jms.route.deadletter." + route.getName() + "?level=ERROR&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false").maximumRedeliveries(3).redeliveryDelay(500)
							.retryAttemptedLogLevel(LoggingLevel.WARN).retriesExhaustedLogLevel(LoggingLevel.ERROR)
							.log("de.groupon.jms.route.error." + route.getName()));
					from(route.getSourceEndpoint().getCamelUri()).routeId(route.getName()).autoStartup(autoStartup)
							.filter().method(route.getFilterChain(), "filterMessage")
							.process(route.getTransformer())
							.choice().when(body().isNotNull())
								.to("log:de.groupon.jms.route." + route.getName() + "?level=INFO&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false").stop()
							.otherwise()
							.stop();
				}
			};
		} else {
			JmsEndpoint dstEndpoint = (JmsEndpoint) route.getDestinationEndpoint();
			ic = getInitialContext(dstEndpoint.getHost(), dstEndpoint.getJndiPort());
			ConnectionFactory dstConnectionFactory = (ConnectionFactory)ic.lookup("/connectionFactory/local/" + dstEndpoint.getJndiConnectionFactoryName());
			((HornetQJMSConnectionFactory)dstConnectionFactory).setReconnectAttempts(-1);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setRetryInterval(1000);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setConnectionTTL(120000);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setClientFailureCheckPeriod(2000);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setCallTimeout(60000);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setConsumerWindowSize(4194304);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setInitialConnectAttempts(-1);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setUseGlobalPools(false);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setScheduledThreadPoolMaxSize(5);
			((HornetQJMSConnectionFactory)dstConnectionFactory).setThreadPoolMaxSize(5);
			SjmsComponent sjms = new SjmsComponent();
			sjms.setConnectionFactory(dstConnectionFactory);
			camelContext.addComponent(dstEndpoint.getName(), sjms);
			ic.close();

			newRouteBuilder = new RouteBuilder() {
				@Override
				public void configure() {
					errorHandler(deadLetterChannel("log:de.groupon.jms.route.deadletter." + route.getName() + "?level=ERROR&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false").maximumRedeliveries(3).redeliveryDelay(500)
							.retryAttemptedLogLevel(LoggingLevel.WARN).retriesExhaustedLogLevel(LoggingLevel.ERROR)
							.log("de.groupon.jms.route.error." + route.getName()));
					from(route.getSourceEndpoint().getCamelUri()).routeId(route.getName()).autoStartup(autoStartup)
						.filter().method(route.getFilterChain(), "filterMessage")
						.process(route.getTransformer())
						.choice().when(body().isNotNull())
							.to(ExchangePattern.InOnly, route.getDestinationEndpoint().getCamelUri())
							.to("log:de.groupon.jms.route." + route.getName() + "?level=INFO&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false")
							.stop()
						.otherwise()
							.stop();
				}
			};
		}
		return newRouteBuilder;
	}
{code}


> camel-sjms NullPointerException when adding new route with Sjms as producer.
> ----------------------------------------------------------------------------
>
>                 Key: CAMEL-7151
>                 URL: https://issues.apache.org/jira/browse/CAMEL-7151
>             Project: Camel
>          Issue Type: Bug
>    Affects Versions: 2.13.0
>            Reporter: Marios Trivizas
>
> The following exception is thrown when adding new route programmatically with Sjms as producer:
> java.lang.NullPointerException
> 	at java.util.concurrent.ArrayBlockingQueue.checkNotNull(ArrayBlockingQueue.java:145)
> 	at java.util.concurrent.ArrayBlockingQueue.offer(ArrayBlockingQueue.java:296)
> 	at java.util.AbstractQueue.add(AbstractQueue.java:95)
> 	at java.util.concurrent.ArrayBlockingQueue.add(ArrayBlockingQueue.java:283)
> 	at org.apache.camel.component.sjms.jms.ObjectPool.fillPool(ObjectPool.java:55)
> 	at org.apache.camel.component.sjms.SjmsProducer.doStart(SjmsProducer.java:139)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:407)
> 	at org.apache.camel.impl.ProducerCache.acquireProducer(ProducerCache.java:123)
> 	at org.apache.camel.processor.SendProcessor.doStart(SendProcessor.java:191)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
> 	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
> 	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.MulticastProcessor.doStart(MulticastProcessor.java:984)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
> 	at org.apache.camel.processor.FilterProcessor.doStart(FilterProcessor.java:80)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.ChoiceProcessor.doStart(ChoiceProcessor.java:171)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
> 	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
> 	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:61)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.MulticastProcessor.doStart(MulticastProcessor.java:984)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
> 	at org.apache.camel.processor.FilterProcessor.doStart(FilterProcessor.java:80)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.RedeliveryErrorHandler.doStart(RedeliveryErrorHandler.java:1154)
> 	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:41)
> 	at org.apache.camel.support.ChildServiceSupport.start(ChildServiceSupport.java:28)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.interceptor.DefaultChannel.doStart(DefaultChannel.java:155)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:59)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:103)
> 	at org.apache.camel.util.ServiceHelper.startServices(ServiceHelper.java:89)
> 	at org.apache.camel.processor.DelegateAsyncProcessor.doStart(DelegateAsyncProcessor.java:79)
> 	at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
> 	at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:74)
> 	at org.apache.camel.impl.RouteService.startChildService(RouteService.java:329)
> 	at org.apache.camel.impl.RouteService.warmUp(RouteService.java:158)
> 	at org.apache.camel.impl.DefaultCamelContext.doWarmUpRoutes(DefaultCamelContext.java:2109)
> 	at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2039)
> 	at org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:2061)
> 	at org.apache.camel.impl.DefaultCamelContext.startRouteService(DefaultCamelContext.java:1938)
> 	at org.apache.camel.impl.DefaultCamelContext.startRoute(DefaultCamelContext.java:772)
> 	at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:1914)
> 	at org.apache.camel.impl.DefaultCamelContext.addRouteDefinitions(DefaultCamelContext.java:707)
> 	at org.apache.camel.builder.RouteBuilder.populateRoutes(RouteBuilder.java:337)
> 	at org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:264)
> 	at org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:669)
> 	at de.groupon.jms.DynamicRoutesManager.addRoute(DynamicRoutesManager.java:178)
> Here is my code:
> {code}
> public static RouteBuilder buildRoute(final DynamicRoute route, final CamelContext camelContext, final boolean autoStartup) throws Exception {
> 		InitialContext ic = getInitialContext(route.getSourceEndpoint().getHost(), route.getSourceEndpoint().getJndiPort());
> 		ConnectionFactory srcConnectionFactory = (ConnectionFactory)ic.lookup("/connectionFactory/local/" + route.getSourceEndpoint().getJndiConnectionFactoryName());
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setReconnectAttempts(-1);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setRetryInterval(1000);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setConnectionTTL(120000);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setClientFailureCheckPeriod(2000);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setCallTimeout(60000);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setConsumerWindowSize(4194304);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setInitialConnectAttempts(-1);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setUseGlobalPools(false);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setScheduledThreadPoolMaxSize(5);
> 		((HornetQJMSConnectionFactory)srcConnectionFactory).setThreadPoolMaxSize(5);
> 		camelContext.addComponent(route.getSourceEndpoint().getName(), JmsComponent.jmsComponentAutoAcknowledge(srcConnectionFactory));
> 		ic.close();
> 		RouteBuilder newRouteBuilder;
> 		JmsEndpoint dstEndpoint = (JmsEndpoint) route.getDestinationEndpoint();
> 		ic = getInitialContext(dstEndpoint.getHost(), dstEndpoint.getJndiPort());
> 		ConnectionFactory dstConnectionFactory = (ConnectionFactory)ic.lookup("/connectionFactory/local/" + dstEndpoint.getJndiConnectionFactoryName());
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setReconnectAttempts(-1);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setRetryInterval(1000);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setConnectionTTL(120000);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setClientFailureCheckPeriod(2000);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setCallTimeout(60000);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setConsumerWindowSize(4194304);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setInitialConnectAttempts(-1);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setUseGlobalPools(false);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setScheduledThreadPoolMaxSize(5);
> 		((HornetQJMSConnectionFactory)dstConnectionFactory).setThreadPoolMaxSize(5);
> 		SjmsComponent sjms = new SjmsComponent();
> 		sjms.setConnectionFactory(dstConnectionFactory);
> 		camelContext.addComponent(dstEndpoint.getName(), sjms);
> 		ic.close();
> 		newRouteBuilder = new RouteBuilder() {
> 			@Override
> 			public void configure() {
> 				errorHandler(deadLetterChannel("log:de.groupon.jms.route.deadletter." + route.getName() + "?level=ERROR&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false").maximumRedeliveries(3).redeliveryDelay(500)
> 						.retryAttemptedLogLevel(LoggingLevel.WARN).retriesExhaustedLogLevel(LoggingLevel.ERROR)
> 						.log("de.groupon.jms.route.error." + route.getName()));
> 				from(route.getSourceEndpoint().getCamelUri()).routeId(route.getName()).autoStartup(autoStartup)
> 					.filter().method(route.getFilterChain(), "filterMessage")
> 					.process(route.getTransformer())
> 					.choice().when(body().isNotNull())
> 						.to(ExchangePattern.InOnly, route.getDestinationEndpoint().getCamelUri())
> 						.to("log:de.groupon.jms.route." + route.getName() + "?level=INFO&showBody=true&showHeaders=true&showExchangePattern=false&showBodyType=false")
> 						.stop()
> 					.otherwise()
> 						.stop();
> 			}
> 		};
> 	}
> 	return newRouteBuilder;
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)