Leglise Yann wrote:
Hello Robert,

I am not particulary trying to create queues dynamically. I am in fact trying to 
determine if by using the JMS QPID implementation leads to an AMQP compliant behaviour. I 
mean, by using JMS, as soon as a use a consumer on an non-existing queue, this queue is 
automatically created in the broker. Would this happen if I used "low level" 
QPID java, or C++ or python?
As we discussed before, QPID is an implementation of AMQP, so I expected that 
whichever was the underlying language or library used, the use of QPID would 
lead to the same result, i.e. the behaviour specified in AMQP.
As I have read that in AMQP queues should be explicitely declared, I was just 
wondering if the automatic queue creation achieved through JMS was acceptable 
since it was not the behaviour described by AMQP, or in other words, I am 
wondering if the JMS QPID implementation is AMQP compliant.

AMQP is an interoperable protocol, it does not define an API. Java JMS is an API, it does not define an interoperable protocol.

Our Java JMS implementation uses vanilla AMQP, as defined by the AMQP specification. It implements the Java JMS API. Because Java JMS says queues can be declared implicitly, we have to execute the appropriate AMQP commands to ensure that a non-existing queue is declared if need be.

The C++, and Python APIs are based more directly on the AMQP commands, and do not implicitly declare queues. I believe this is the same of the low-level Java API (but I admit I didn't check before sending this email).

Jonathan

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

Reply via email to