1 Reply Latest reply on Mar 31, 2011 3:35 AM by Torsten Mielke

    Use Of SonicMQ (or other JMS brokers) with Fuse Mediation Router(Camel)?

    Raj Kapoor Newbie



      As already mentioned in another post, we are planning on using SonicMQ (not necessarily our decision) with Fuse Mediation Router(Camel).


      Can you tell me if Fuse Mediation Router(Camel) has been coded to work identically for all Message Brokers, ie for example, it will work in exactly the same way and with the same functionality, with SonicMQ, for example, as it does with ActiveMQ?


      Or, if we do not use ActiveMQ, what are the main differences to be aware of? Are there many areas where there are differences, or just limited/different functionality in  few areas only? Please can you tell us any of these differences/limitations, if we decide to use another MOM than ActiveMQ (namely SonicMQ)?


      (Background to this is as follows : Initially, we all played around with ActiveMQ and Camel. Now we are using the same code examples, but with SonicMQ. We are maybe noting some quirks, and are not sure if this is our configuration or not. For example, With ActiveMQ, we could quite happily allow Camel to create the queue dynamically for us, we would merely mention it in our Camel routing DSL. With SonicMQ, this doesn't seem to work. We would have had to create the queue beforehand, using the SonicMQ admin tool. However, surely SonicMQ provides dynamic queue creation functionality? Also, other experiences noted have been that , are problems with pojo?s. With SonicMQ, when a pojo is put on a queue the route taking the pojo off the queue fails as it doesn?t see it as being a POJO but a byte array. This code did work with Active MQ.)


      All help and advice appreciated. Thanks.

        • 1. Re: Use Of SonicMQ (or other JMS brokers) with Fuse Mediation Router(Camel)?
          Torsten Mielke Apprentice

          From a pure JMS specification point of view there should not be a difference between using ActiveMQ and SonicMQ when being used by Camel. Camel should connect to both without problems and limitations (considering JMS spec only, not proprietary features).


          The first issue you noticed with SonicMQ is due to the way SonicMQ works, not due to Camel. ActiveMQ creates destinations for you on first usage dynamically at runtime. So its a feature of ActiveMQ. SonicMQ does not allow this. It requires you to create destinations upfront before you can use them.


          Not sure on the POJO related question though.