camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From JonFields <Jon.D.Fie...@gmail.com>
Subject ActiveMQ Component and Connection Pooling not working
Date Thu, 11 Feb 2016 16:22:47 GMT
Camel Version: 2.16.0
ActiveMQ version: 5.13.0
Container/Environment: Karaf 4.0.4/Blueprint

I tried the example for connection pooling here, using Blueprint and
deploying to Karaf:

    http://camel.apache.org/activemq.html

Here is my blueprint.xml. The RouteBuilder class just does a
from("activemq:test").to("log:test"); Note that ActiveMQ is running on the
host "s4", NOT "localhost" where Karaf is running.

<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >

	<bean id="jmsConnectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
	   <property name="brokerURL" value="tcp://s4:61616" />
		<property name="userName" value="admin" />
		<property name="password" value="admin" />
	</bean>

	<bean id="pooledConnectionFactory"
class="org.apache.activemq.pool.PooledConnectionFactory"
		init-method="start" destroy-method="stop">
		<property name="maxConnections" value="8" />
		<property name="connectionFactory" ref="jmsConnectionFactory" />
	</bean>

	<bean id="jmsConfig"
class="org.apache.camel.component.jms.JmsConfiguration">
		<property name="connectionFactory" ref="pooledConnectionFactory" />
		<property name="concurrentConsumers" value="10" />
	</bean>

	<bean id="activemq"
class="org.apache.activemq.camel.component.ActiveMQComponent">
		<property name="configuration" ref="jmsConfig" />
	</bean>

	<bean id="routeBuilder" class="test.RouteBuilder">
	</bean>

	<camelContext id="test-activemq-routes"
xmlns="http://camel.apache.org/schema/blueprint">
		<routeBuilder ref="routeBuilder" />
	</camelContext>

</blueprint>

When the bundle is started in Karaf, it hangs forever, with the ActiveMQ
client trying to connect to

     tcp://localhost:61616

NOT

     tcp://s4:61616

as specified above. So apparently the ConnectionFactory that is being passed
is somehow being ignored. 

If I used the following blueprint.xml, specifying the ActiveMQ URL,
username, and password directly to the ActiveMQComponent, it works fine - it
correctly connects to the remote ActiveMQ server on the "s4" server.

<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

	<bean id="activemq"
class="org.apache.activemq.camel.component.ActiveMQComponent">
		<property name="brokerURL" value="tcp://s4:61616" />
        <property name="userName" value="admin" />
        <property name="password" value="admin" />
	</bean>

	<bean id="routeBuilder"
class="edu.usc.ucm.test_activemq_routes.RouteBuilder">
	</bean>

	<camelContext id="test-activemq-routes"
		xmlns="http://camel.apache.org/schema/blueprint">
		<routeBuilder ref="routeBuilder" />
	</camelContext>

</blueprint>

Is this a bug, is the documentation wrong, or am I doing something wrong?

Thanks.




--
View this message in context: http://camel.465427.n5.nabble.com/ActiveMQ-Component-and-Connection-Pooling-not-working-tp5777608.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Mime
View raw message