�I need to forward a JMS msg from BEA WebLogic on Tandem Nonstop to IBM MQ. Since Tandem does not currently support MQ I need to send my JMS msg to an intermediate Unix box where MQJMS is running on BEA under Solaris. �It looks I will have to write an adapter to take the msg off the JMS queue in Unix and put it on the MQ/JMS queue since the IBM MQ/JMS classes doesn�t implement the neutral javax.jms Interface. �Does anybody know of another way of going about this? Thank you Max
We're using MQ 5.3 - the classes I see implemented are: com.ibm.mq.jms so if I bind a connection factory in WL 8.1 JNDI, I get: com.ibm.mq.jms.MQQueueConnectionFactory which gives me a class cast exception when I try to access it as a javax.jms.QueueConnectionFactory
Thanks for the info but I believe the problem still exists:
I need to define the QManager etc in WebLogic at startup in order to bind them into WL�s JNDI. The way I do this is to instantiate the QueueConncectionFactory and Queue and then bind them. Unfortunately I see no way to do this without using the com.ibm classes. In the doc you provided it says (p 201):
If a JNDI namespace is not available, it is possible to create factory objects at runtime. However, using this method reduces the portability of the JMS application because it requires references to WebSphere MQ specific classes. The following code creates a QueueConnectionFactory with all default settings: factory = new com.ibm.mq.jms.MQQueueConnectionFactory();
So it looks like I have to write an adapter after all. I�m curious, though, how WAS is able to bind MQJMS into JNDI as javax.jms objects.
I wanted to provide an update here for those that are interested:
I am using the BEA Foreign Server facility which, under the covers, I bet uses a BEA implementation of JMS. Once I access the foreign definition for an MQ/JMS connection factory I get a class cast exception even though MQJMS implements javax.jms.QueueConnectionFactory.
I think BEA must be using it's own stubs etc. to connect to the Foreign Server (T3 protocol) and it barfs when I try to lookup a foreign QCF that boils down to MQJMS.