Leglise Yann wrote:
Thank you Gordon.
Your answers helped, but I want to make it a little bit clearer about the
relation between QPID and JMS.
I can only see 2 possible interpretation of the relation between JMS and QPID
(one will necessarily be wrong):
1) QPID relies on (i.e. make use of) a JMS implementation in order to use the
JMS services to satisfy the AMQP purposes,
2) QPID actually IS a JMS implementation that directly includes the AMQP
required behaviour.
Option 2 is the correct one.
This is confusing for me since in my java program, I am linked to a jms.jar
(gotten from the J2EE SDK), in association with the qpid jars, and I suppose
this jms.jar contains a JMS implementation (leading to the first
interpretation).
So in the case 1), I cannot understand how a JMS object (that does not "know" I
am using a QPID jar) can interact with an AMQP broker (I mean, when I invoke a send API
on a javax.jms.MessageProducer, how is it that Wireshark detects AMQP frames? The meaning
of my question in my previous mail was to understand how could the JMS objects (defined,
according to me, in the jms.jar) could interact with the QPID jars (I supposed that the
AMQP frames are sent by some classes of the QPID jars) since nothing is (apparently) made
to link JMS object with QPID classes).
In case 2), why should I need using the jms.jar if the implementation already
exists in the QPID jars?
The only explanation I can imagine is that the jms.jar is used only for the interfaces
like Connection, Session etc. some implementors of which resides in QPID library that are
used because using org.apache.qpid.jndi.PropertiesFileInitialContextFactory in JNDI.
Then, as every used object (ConnectionFactory, Destination ...) are obtained through a
first QPID class implementing the InitialContext, this implementing class also choose a
QPID class implementing those interfaces (and so on for Connection, Queue ...). This is
what I guess, but I would like to have a confirmation from someone who "knows".
Yes, assuming you mean the geronimo-jms_1.1_spec-1.0.jar, that is
correct. It contains only the interface definitions.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:users-subscr...@qpid.apache.org