You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by Fraser Adams <fr...@blueyonder.co.uk> on 2011/12/08 20:28:46 UTC

Has anyone tried Bridging between Qpid and ActiveMQ?

Hi All,
Has anyone tried Bridging between Qpid and ActiveMQ?

I've got a colleague at work who's got a project that uses ActiveMQ and 
he's keen to get messages from my Qpid broker (obviously I suggested he 
switches to Qpid :-))

I'm thinking that the only way to achieve this might be to create a 
bridge component that reads from Qpid JMS on one side and writes to 
ActiveMQ JMS the other. I've got a nasty feeling that there are going to 
be evil classpath issues that could make this hard to do (fortunately 
the messages are just opaque octet arrays).

Has anyone tried this, are there more elegant approaches?

I've heard that ActiveMQ supports AMQP in some way, but I'm not familiar 
with ActiveMQ so I'm not clear exactly what that statement might mean.

Cheers,
Frase

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


Re: Has anyone tried Bridging between Qpid and ActiveMQ?

Posted by Siddhesh Poyarekar <si...@redhat.com>.
On Thu, Dec 08, 2011 at 07:28:46PM +0000, Fraser Adams wrote:
> Hi All,
> Has anyone tried Bridging between Qpid and ActiveMQ?
> 
> I've got a colleague at work who's got a project that uses ActiveMQ
> and he's keen to get messages from my Qpid broker (obviously I
> suggested he switches to Qpid :-))
> 
> I'm thinking that the only way to achieve this might be to create a
> bridge component that reads from Qpid JMS on one side and writes to
> ActiveMQ JMS the other. I've got a nasty feeling that there are going
> to be evil classpath issues that could make this hard to do
> (fortunately the messages are just opaque octet arrays).
> 
> Has anyone tried this, are there more elegant approaches?

I had tried bridging once, but it did not work because of the strict
requirements the qpid java client has for the value of
JMSMessageID. ActiveMQ sends a concatenated combination of a few
parameters (host name, queue id, etc.) while the qpid java client
always expects a UUID.

The AMQP spec requires the message ID to be a UUID while the JMS spec
does not have any restrictions on it, so it is technically a bit of a
spec deadlock that doesn't seem to have been resolved yet.

--
Siddhesh

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


Re: Has anyone tried Bridging between Qpid and ActiveMQ?

Posted by Siddhesh Poyarekar <si...@redhat.com>.
On Thu, Dec 08, 2011 at 07:28:46PM +0000, Fraser Adams wrote:
> Hi All,
> Has anyone tried Bridging between Qpid and ActiveMQ?
> 
> I've got a colleague at work who's got a project that uses ActiveMQ
> and he's keen to get messages from my Qpid broker (obviously I
> suggested he switches to Qpid :-))
> 
> I'm thinking that the only way to achieve this might be to create a
> bridge component that reads from Qpid JMS on one side and writes to
> ActiveMQ JMS the other. I've got a nasty feeling that there are going
> to be evil classpath issues that could make this hard to do
> (fortunately the messages are just opaque octet arrays).
> 
> Has anyone tried this, are there more elegant approaches?

I had tried bridging once, but it did not work because of the strict
requirements the qpid java client has for the value of
JMSMessageID. ActiveMQ sends a concatenated combination of a few
parameters (host name, queue id, etc.) while the qpid java client
always expects a UUID.

The AMQP spec requires the message ID to be a UUID while the JMS spec
does not have any restrictions on it, so it is technically a bit of a
spec deadlock that doesn't seem to have been resolved yet.

--
Siddhesh

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


Re: Has anyone tried Bridging between Qpid and ActiveMQ?

Posted by Rob Godfrey <ro...@gmail.com>.
I was talking to a guy earlier in the year who was working on an AMQP 1.0
implementation for ActiveMQ... of course for that to work we need to get a
move on with our own AMQP 1.0 code :-)

-- Rob

On 9 December 2011 08:48, William Henry <wh...@redhat.com> wrote:

> Sadly, though I often hear that ActiveMQ will support AMQP even the web
> page seems very much out of date:
> http://activemq.apache.org/amqp.html
>
> For example it references Qpid project:
> "This code has been placed into incubation as the Qpid project (this link
> will change if accepted as full project). Development is still at an early
> stage."
>
> Talking to a Fuse Source guy just last week I was told that AMQP is coming
> but I see no evidence. Anyone checked over there?
>
> I guess Camel is the way to go for now. But I agree an interoperable
> federated approach is more desirable than a bridge.
>
> William
>
>
> ----- Original Message -----
> > Morning Boris,
> > Many thanks for the detailed response.
> >
> > Funnily enough I was thinking that Camel was likely the way to go,
> > but I
> > didn't want to pre-empt it in case anyone had other approaches (it'd
> > be
> > nice to be able to directly federate directly :-)).
> >
> > I'm not that familiar with Camel myself, I keep meaning to get
> > properly
> > up to speed, however as it happens my team use Camel for our Java
> > based
> > Qpid clients and I'm pretty sure that my colleague who's using
> > ActiveMQ
> > uses Camel in his project too so this approach is likely to fit
> > pretty
> > nicely.
> >
> > Cheers,
> > Frase
> >
> > Ilyushonak Barys wrote:
> > > Fraser,
> > >
> > > There is a great possibility to run an camel route
> > > (http://camel.apache.org/) inside Active MQ.
> > > It works like a bridge between qpid and Active MQ.
> > >
> > > It needs something like
> > >     <import resource="camel-bridge.xml"/>
> > > In activemq.xml
> > >
> > > camel-bridge.xml my looks like
> > > <beans
> > >     xmlns="http://www.springframework.org/schema/beans"
> > >     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > >     xsi:schemaLocation="
> > >         http://www.springframework.org/schema/beans
> > >
> http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
> > >         http://camel.apache.org/schema/spring
> > >         http://camel.apache.org/schema/spring/camel-spring.xsd">
> > >
> > >     <bean id="jndiTemplate"
> > >     class="org.springframework.jndi.JndiTemplate">
> > >         <property name="environment">
> > >             <props>
> > >                 <prop
> > >
> key="java.naming.factory.initial">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</prop>
> > >                 <prop
> > >
> key="connectionfactory.QpidConnectionFactory"><![CDATA[amqp://guest:guest@qpid-host
> /test?brokerlist='tcp://qpid-host:5672?retries='1000'&connectdelay='5000';']]></prop>
> > >                 <prop
> > >
> key="destination.amq.bridged">BURL:direct://amq.direct//amq.bridged?routingkey='amq.bridged'</prop>
> > >             </props>
> > >         </property>
> > >     </bean>
> > >
> > >     <bean id="qpidConnectionFactory"
> > >     class="org.springframework.jms.connection.SingleConnectionFactory">
> > >         <property name="targetConnectionFactory">
> > >             <bean
> > >             class="org.springframework.jndi.JndiObjectFactoryBean">
> > >                 <property name="jndiTemplate" ref="jndiTemplate" />
> > >                 <property name="jndiName"
> > >                 value="QpidConnectionFactory" />
> > >             </bean>
> > >         </property>
> > >         <property name="reconnectOnException" value="true"/>
> > >     </bean>
> > >
> > >     <bean id="qpidDestResolver"
> > >
> class="org.springframework.jms.support.destination.JndiDestinationResolver">
> > >         <property name="jndiTemplate" ref="jndiTemplate"/>
> > >     </bean>
> > >
> > >     <!-- Components -->
> > >     <bean id="amqp"
> > >     class="org.apache.camel.component.jms.JmsComponent">
> > >         <property name="configuration">
> > >             <bean
> > >             class="org.apache.camel.component.jms.JmsConfiguration">
> > >                 <property name="connectionFactory"
> > >                 ref="qpidConnectionFactory" />
> > >                 <property name="destinationResolver"
> > >                 ref="qpidDestResolver"/>
> > >             </bean>
> > >         </property>
> > >     </bean>
> > >
> > >     <!-- configure the camel activemq component to use the current
> > >     broker -->
> > >     <bean id="activemq"
> > >     class="org.apache.activemq.camel.component.ActiveMQComponent"
> > >     >
> > >         <property name="connectionFactory">
> > >           <bean
> > >           class="org.apache.activemq.ActiveMQConnectionFactory">
> > >             <property name="brokerURL"
> > >             value="vm://localhost?create=false&amp;waitForStart=10000"
> > >             />
> > >             <property name="userName"
> > >             value="${activemq.username}"/>
> > >             <property name="password"
> > >             value="${activemq.password}"/>
> > >           </bean>
> > >         </property>
> > >     </bean>
> > >
> > >     <camelContext id="ru.troika.cto.activemq.bridge"
> > >     xmlns="http://camel.apache.org/schema/spring">
> > >         <route id="bridge">
> > >             <from uri="activemq:local.incoming.queue"/>
> > >             <to uri="amqp://amq.bridged"/>
> > >         </route>
> > >     </camelContext>
> > >
> > > Regards,
> > > Boris
> > > -----Original Message-----
> > > From: Fraser Adams [mailto:fraser.adams@blueyonder.co.uk]
> > > Sent: Thursday, December 08, 2011 11:29 PM
> > > To: users@qpid.apache.org
> > > Subject: Has anyone tried Bridging between Qpid and ActiveMQ?
> > >
> > > Hi All,
> > > Has anyone tried Bridging between Qpid and ActiveMQ?
> > >
> > > I've got a colleague at work who's got a project that uses ActiveMQ
> > > and he's keen to get messages from my Qpid broker (obviously I
> > > suggested he switches to Qpid :-))
> > >
> > > I'm thinking that the only way to achieve this might be to create a
> > > bridge component that reads from Qpid JMS on one side and writes
> > > to ActiveMQ JMS the other. I've got a nasty feeling that there are
> > > going to be evil classpath issues that could make this hard to do
> > > (fortunately the messages are just opaque octet arrays).
> > >
> > > Has anyone tried this, are there more elegant approaches?
> > >
> > > I've heard that ActiveMQ supports AMQP in some way, but I'm not
> > > familiar with ActiveMQ so I'm not clear exactly what that
> > > statement might mean.
> > >
> > > Cheers,
> > > Frase
> > >
> > > ---------------------------------------------------------------------
> > > Apache Qpid - AMQP Messaging Implementation
> > > Project:      http://qpid.apache.org
> > > Use/Interact: mailto:users-subscribe@qpid.apache.org
> > >
> > >
> > > _______________________________________________________
> > >
> > > The information contained in this message may be privileged and
> > > conf idential and protected from disclosure. If you are not the
> > > original intended recipient, you are hereby notified that any
> > > review, retransmission, dissemination, or other use of, or taking
> > > of any action in reliance upon, this information is prohibited. If
> > > you have received this communication in error, please notify the
> > > sender immediately by replying to this message and delete it from
> > > your computer. Thank you for your cooperation. Troika Dialog,
> > > Russia.
> > > If you need assistance please contact our Contact Center  (+7495)
> > > 258 0500 or go to www.troika.ru/eng/Contacts/system.wbp
> > >
> > >
> > >
> > > ---------------------------------------------------------------------
> > > Apache Qpid - AMQP Messaging Implementation
> > > Project:      http://qpid.apache.org
> > > Use/Interact: mailto:users-subscribe@qpid.apache.org
> > >
> > >
> > >
> >
> >
> > ---------------------------------------------------------------------
> > Apache Qpid - AMQP Messaging Implementation
> > Project:      http://qpid.apache.org
> > Use/Interact: mailto:users-subscribe@qpid.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:users-subscribe@qpid.apache.org
>
>

Re: Has anyone tried Bridging between Qpid and ActiveMQ?

Posted by William Henry <wh...@redhat.com>.
Sadly, though I often hear that ActiveMQ will support AMQP even the web page seems very much out of date:
http://activemq.apache.org/amqp.html

For example it references Qpid project:
"This code has been placed into incubation as the Qpid project (this link will change if accepted as full project). Development is still at an early stage."

Talking to a Fuse Source guy just last week I was told that AMQP is coming but I see no evidence. Anyone checked over there?

I guess Camel is the way to go for now. But I agree an interoperable federated approach is more desirable than a bridge. 

William
 

----- Original Message -----
> Morning Boris,
> Many thanks for the detailed response.
> 
> Funnily enough I was thinking that Camel was likely the way to go,
> but I
> didn't want to pre-empt it in case anyone had other approaches (it'd
> be
> nice to be able to directly federate directly :-)).
> 
> I'm not that familiar with Camel myself, I keep meaning to get
> properly
> up to speed, however as it happens my team use Camel for our Java
> based
> Qpid clients and I'm pretty sure that my colleague who's using
> ActiveMQ
> uses Camel in his project too so this approach is likely to fit
> pretty
> nicely.
> 
> Cheers,
> Frase
> 
> Ilyushonak Barys wrote:
> > Fraser,
> >
> > There is a great possibility to run an camel route
> > (http://camel.apache.org/) inside Active MQ.
> > It works like a bridge between qpid and Active MQ.
> >
> > It needs something like
> >     <import resource="camel-bridge.xml"/>
> > In activemq.xml
> >
> > camel-bridge.xml my looks like
> > <beans
> >     xmlns="http://www.springframework.org/schema/beans"
> >     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >     xsi:schemaLocation="
> >         http://www.springframework.org/schema/beans
> >         http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
> >         http://camel.apache.org/schema/spring
> >         http://camel.apache.org/schema/spring/camel-spring.xsd">
> >
> >     <bean id="jndiTemplate"
> >     class="org.springframework.jndi.JndiTemplate">
> >         <property name="environment">
> >             <props>
> >                 <prop
> >                 key="java.naming.factory.initial">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</prop>
> >                 <prop
> >                 key="connectionfactory.QpidConnectionFactory"><![CDATA[amqp://guest:guest@qpid-host/test?brokerlist='tcp://qpid-host:5672?retries='1000'&connectdelay='5000';']]></prop>
> >                 <prop
> >                 key="destination.amq.bridged">BURL:direct://amq.direct//amq.bridged?routingkey='amq.bridged'</prop>
> >             </props>
> >         </property>
> >     </bean>
> >
> >     <bean id="qpidConnectionFactory"
> >     class="org.springframework.jms.connection.SingleConnectionFactory">
> >         <property name="targetConnectionFactory">
> >             <bean
> >             class="org.springframework.jndi.JndiObjectFactoryBean">
> >                 <property name="jndiTemplate" ref="jndiTemplate" />
> >                 <property name="jndiName"
> >                 value="QpidConnectionFactory" />
> >             </bean>
> >         </property>
> >         <property name="reconnectOnException" value="true"/>
> >     </bean>
> >
> >     <bean id="qpidDestResolver"
> >     class="org.springframework.jms.support.destination.JndiDestinationResolver">
> >         <property name="jndiTemplate" ref="jndiTemplate"/>
> >     </bean>
> >     
> >     <!-- Components -->
> >     <bean id="amqp"
> >     class="org.apache.camel.component.jms.JmsComponent">
> >         <property name="configuration">
> >             <bean
> >             class="org.apache.camel.component.jms.JmsConfiguration">
> >                 <property name="connectionFactory"
> >                 ref="qpidConnectionFactory" />
> >                 <property name="destinationResolver"
> >                 ref="qpidDestResolver"/>
> >             </bean>
> >         </property>
> >     </bean>
> >
> >     <!-- configure the camel activemq component to use the current
> >     broker -->
> >     <bean id="activemq"
> >     class="org.apache.activemq.camel.component.ActiveMQComponent"
> >     >
> >         <property name="connectionFactory">
> >           <bean
> >           class="org.apache.activemq.ActiveMQConnectionFactory">
> >             <property name="brokerURL"
> >             value="vm://localhost?create=false&amp;waitForStart=10000"
> >             />
> >             <property name="userName"
> >             value="${activemq.username}"/>
> >             <property name="password"
> >             value="${activemq.password}"/>
> >           </bean>
> >         </property>
> >     </bean>
> >
> >     <camelContext id="ru.troika.cto.activemq.bridge"
> >     xmlns="http://camel.apache.org/schema/spring">
> >         <route id="bridge">
> >             <from uri="activemq:local.incoming.queue"/>
> >             <to uri="amqp://amq.bridged"/>
> >         </route>
> >     </camelContext>
> >
> > Regards,
> > Boris
> > -----Original Message-----
> > From: Fraser Adams [mailto:fraser.adams@blueyonder.co.uk]
> > Sent: Thursday, December 08, 2011 11:29 PM
> > To: users@qpid.apache.org
> > Subject: Has anyone tried Bridging between Qpid and ActiveMQ?
> >
> > Hi All,
> > Has anyone tried Bridging between Qpid and ActiveMQ?
> >
> > I've got a colleague at work who's got a project that uses ActiveMQ
> > and he's keen to get messages from my Qpid broker (obviously I
> > suggested he switches to Qpid :-))
> >
> > I'm thinking that the only way to achieve this might be to create a
> > bridge component that reads from Qpid JMS on one side and writes
> > to ActiveMQ JMS the other. I've got a nasty feeling that there are
> > going to be evil classpath issues that could make this hard to do
> > (fortunately the messages are just opaque octet arrays).
> >
> > Has anyone tried this, are there more elegant approaches?
> >
> > I've heard that ActiveMQ supports AMQP in some way, but I'm not
> > familiar with ActiveMQ so I'm not clear exactly what that
> > statement might mean.
> >
> > Cheers,
> > Frase
> >
> > ---------------------------------------------------------------------
> > Apache Qpid - AMQP Messaging Implementation
> > Project:      http://qpid.apache.org
> > Use/Interact: mailto:users-subscribe@qpid.apache.org
> >
> >
> > _______________________________________________________
> >
> > The information contained in this message may be privileged and
> > conf idential and protected from disclosure. If you are not the
> > original intended recipient, you are hereby notified that any
> > review, retransmission, dissemination, or other use of, or taking
> > of any action in reliance upon, this information is prohibited. If
> > you have received this communication in error, please notify the
> > sender immediately by replying to this message and delete it from
> > your computer. Thank you for your cooperation. Troika Dialog,
> > Russia.
> > If you need assistance please contact our Contact Center  (+7495)
> > 258 0500 or go to www.troika.ru/eng/Contacts/system.wbp
> >
> >
> >
> > ---------------------------------------------------------------------
> > Apache Qpid - AMQP Messaging Implementation
> > Project:      http://qpid.apache.org
> > Use/Interact: mailto:users-subscribe@qpid.apache.org
> >
> >
> >   
> 
> 
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:users-subscribe@qpid.apache.org
> 
> 

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


Re: Has anyone tried Bridging between Qpid and ActiveMQ?

Posted by Fraser Adams <fr...@blueyonder.co.uk>.
Morning Boris,
Many thanks for the detailed response.

Funnily enough I was thinking that Camel was likely the way to go, but I 
didn't want to pre-empt it in case anyone had other approaches (it'd be 
nice to be able to directly federate directly :-)).

I'm not that familiar with Camel myself, I keep meaning to get properly 
up to speed, however as it happens my team use Camel for our Java based 
Qpid clients and I'm pretty sure that my colleague who's using ActiveMQ 
uses Camel in his project too so this approach is likely to fit pretty 
nicely.

Cheers,
Frase

Ilyushonak Barys wrote:
> Fraser,
>
> There is a great possibility to run an camel route (http://camel.apache.org/) inside Active MQ.
> It works like a bridge between qpid and Active MQ.
>
> It needs something like 
>     <import resource="camel-bridge.xml"/>
> In activemq.xml
>
> camel-bridge.xml my looks like
> <beans 
>     xmlns="http://www.springframework.org/schema/beans" 
>     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>     xsi:schemaLocation="
>         http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
>         http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
>
>     <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
>         <property name="environment">
>             <props>
>                 <prop key="java.naming.factory.initial">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</prop>
>                 <prop key="connectionfactory.QpidConnectionFactory"><![CDATA[amqp://guest:guest@qpid-host/test?brokerlist='tcp://qpid-host:5672?retries='1000'&connectdelay='5000';']]></prop>
>                 <prop key="destination.amq.bridged">BURL:direct://amq.direct//amq.bridged?routingkey='amq.bridged'</prop>
>             </props>
>         </property>
>     </bean>
>
>     <bean id="qpidConnectionFactory" class="org.springframework.jms.connection.SingleConnectionFactory">
>         <property name="targetConnectionFactory">
>             <bean class="org.springframework.jndi.JndiObjectFactoryBean">
>                 <property name="jndiTemplate" ref="jndiTemplate" />
>                 <property name="jndiName" value="QpidConnectionFactory" />
>             </bean>
>         </property>
>         <property name="reconnectOnException" value="true"/>
>     </bean>
>
>     <bean id="qpidDestResolver" class="org.springframework.jms.support.destination.JndiDestinationResolver">
>         <property name="jndiTemplate" ref="jndiTemplate"/>
>     </bean>
>     
>     <!-- Components -->
>     <bean id="amqp" class="org.apache.camel.component.jms.JmsComponent">
>         <property name="configuration">
>             <bean class="org.apache.camel.component.jms.JmsConfiguration">
>                 <property name="connectionFactory" ref="qpidConnectionFactory" />
>                 <property name="destinationResolver" ref="qpidDestResolver"/>
>             </bean>
>         </property>
>     </bean>
>
>     <!-- configure the camel activemq component to use the current broker -->
>     <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent" >
>         <property name="connectionFactory">
>           <bean class="org.apache.activemq.ActiveMQConnectionFactory">
>             <property name="brokerURL" value="vm://localhost?create=false&amp;waitForStart=10000" />
>             <property name="userName" value="${activemq.username}"/>
>             <property name="password" value="${activemq.password}"/>
>           </bean>
>         </property>
>     </bean>
>
>     <camelContext id="ru.troika.cto.activemq.bridge" xmlns="http://camel.apache.org/schema/spring">
>         <route id="bridge">
>             <from uri="activemq:local.incoming.queue"/>
>             <to uri="amqp://amq.bridged"/>
>         </route>
>     </camelContext>
>
> Regards,
> Boris
> -----Original Message-----
> From: Fraser Adams [mailto:fraser.adams@blueyonder.co.uk] 
> Sent: Thursday, December 08, 2011 11:29 PM
> To: users@qpid.apache.org
> Subject: Has anyone tried Bridging between Qpid and ActiveMQ?
>
> Hi All,
> Has anyone tried Bridging between Qpid and ActiveMQ?
>
> I've got a colleague at work who's got a project that uses ActiveMQ and he's keen to get messages from my Qpid broker (obviously I suggested he switches to Qpid :-))
>
> I'm thinking that the only way to achieve this might be to create a bridge component that reads from Qpid JMS on one side and writes to ActiveMQ JMS the other. I've got a nasty feeling that there are going to be evil classpath issues that could make this hard to do (fortunately the messages are just opaque octet arrays).
>
> Has anyone tried this, are there more elegant approaches?
>
> I've heard that ActiveMQ supports AMQP in some way, but I'm not familiar with ActiveMQ so I'm not clear exactly what that statement might mean.
>
> Cheers,
> Frase
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:users-subscribe@qpid.apache.org
>
>
> _______________________________________________________
>
> The information contained in this message may be privileged and conf idential and protected from disclosure. If you are not the original intended recipient, you are hereby notified that any review, retransmission, dissemination, or other use of, or taking of any action in reliance upon, this information is prohibited. If you have received this communication in error, please notify the sender immediately by replying to this message and delete it from your computer. Thank you for your cooperation. Troika Dialog, Russia. 
> If you need assistance please contact our Contact Center  (+7495) 258 0500 or go to www.troika.ru/eng/Contacts/system.wbp  
>
>
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project:      http://qpid.apache.org
> Use/Interact: mailto:users-subscribe@qpid.apache.org
>
>
>   


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


RE: Has anyone tried Bridging between Qpid and ActiveMQ?

Posted by Ilyushonak Barys <Ba...@troika.ru>.
Fraser,

There is a great possibility to run an camel route (http://camel.apache.org/) inside Active MQ.
It works like a bridge between qpid and Active MQ.

It needs something like 
    <import resource="camel-bridge.xml"/>
In activemq.xml

camel-bridge.xml my looks like
<beans 
    xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
        http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">

    <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
        <property name="environment">
            <props>
                <prop key="java.naming.factory.initial">org.apache.qpid.jndi.PropertiesFileInitialContextFactory</prop>
                <prop key="connectionfactory.QpidConnectionFactory"><![CDATA[amqp://guest:guest@qpid-host/test?brokerlist='tcp://qpid-host:5672?retries='1000'&connectdelay='5000';']]></prop>
                <prop key="destination.amq.bridged">BURL:direct://amq.direct//amq.bridged?routingkey='amq.bridged'</prop>
            </props>
        </property>
    </bean>

    <bean id="qpidConnectionFactory" class="org.springframework.jms.connection.SingleConnectionFactory">
        <property name="targetConnectionFactory">
            <bean class="org.springframework.jndi.JndiObjectFactoryBean">
                <property name="jndiTemplate" ref="jndiTemplate" />
                <property name="jndiName" value="QpidConnectionFactory" />
            </bean>
        </property>
        <property name="reconnectOnException" value="true"/>
    </bean>

    <bean id="qpidDestResolver" class="org.springframework.jms.support.destination.JndiDestinationResolver">
        <property name="jndiTemplate" ref="jndiTemplate"/>
    </bean>
    
    <!-- Components -->
    <bean id="amqp" class="org.apache.camel.component.jms.JmsComponent">
        <property name="configuration">
            <bean class="org.apache.camel.component.jms.JmsConfiguration">
                <property name="connectionFactory" ref="qpidConnectionFactory" />
                <property name="destinationResolver" ref="qpidDestResolver"/>
            </bean>
        </property>
    </bean>

    <!-- configure the camel activemq component to use the current broker -->
    <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent" >
        <property name="connectionFactory">
          <bean class="org.apache.activemq.ActiveMQConnectionFactory">
            <property name="brokerURL" value="vm://localhost?create=false&amp;waitForStart=10000" />
            <property name="userName" value="${activemq.username}"/>
            <property name="password" value="${activemq.password}"/>
          </bean>
        </property>
    </bean>

    <camelContext id="ru.troika.cto.activemq.bridge" xmlns="http://camel.apache.org/schema/spring">
        <route id="bridge">
            <from uri="activemq:local.incoming.queue"/>
            <to uri="amqp://amq.bridged"/>
        </route>
    </camelContext>

Regards,
Boris
-----Original Message-----
From: Fraser Adams [mailto:fraser.adams@blueyonder.co.uk] 
Sent: Thursday, December 08, 2011 11:29 PM
To: users@qpid.apache.org
Subject: Has anyone tried Bridging between Qpid and ActiveMQ?

Hi All,
Has anyone tried Bridging between Qpid and ActiveMQ?

I've got a colleague at work who's got a project that uses ActiveMQ and he's keen to get messages from my Qpid broker (obviously I suggested he switches to Qpid :-))

I'm thinking that the only way to achieve this might be to create a bridge component that reads from Qpid JMS on one side and writes to ActiveMQ JMS the other. I've got a nasty feeling that there are going to be evil classpath issues that could make this hard to do (fortunately the messages are just opaque octet arrays).

Has anyone tried this, are there more elegant approaches?

I've heard that ActiveMQ supports AMQP in some way, but I'm not familiar with ActiveMQ so I'm not clear exactly what that statement might mean.

Cheers,
Frase

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


_______________________________________________________

The information contained in this message may be privileged and conf idential and protected from disclosure. If you are not the original intended recipient, you are hereby notified that any review, retransmission, dissemination, or other use of, or taking of any action in reliance upon, this information is prohibited. If you have received this communication in error, please notify the sender immediately by replying to this message and delete it from your computer. Thank you for your cooperation. Troika Dialog, Russia. 
If you need assistance please contact our Contact Center  (+7495) 258 0500 or go to www.troika.ru/eng/Contacts/system.wbp  



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org