I am attempting to send a message from my application residing on WL 10.3 to a topic on a IBM MQ 7 process running on another server. The application is Java/Spring, and the connection is actually working because I can debug it just before the send message and see the topic string from the MQ topic. However when I attempt to 'send' the message, I get the following:
weblogic.common.InvalidDestinationException: [JMSClientExceptions:055142}Foreign Destination, topic://my/topic
The crux of the matter appears to be that weblogic is checking the destination type on this foreign service then throwing the error.
The topic is defined in WL as a destination within a foreign JMS server.
Is there an attribute I can set on this destination that will get me beyond this? Or some other solution?
It seems that you client established a JMS connection with WLS server and tried to use that connection to send messages to MQ.
Can you check your foreign jms server configuration and see if you have the right url, initial context factory class and cf for connecting to MQ server?
Thanks for the link. I got the connection configuration info from my contact IBM, and it matches what I've seen in some of their blog posts. I'll read through the posting and see if anything leaps out.
Here's what I have. The connection strings came from IBM.
Foreign Servier Configuration
JNDI Initial Context Factory: com.ibm.mq.jms.context.WMQInitialContextFactory
JNDI Connection URL: <servierid>:1417/SYSTEM.DEF.SVRCONN
(my queue manager is running on 1417)
I see the topic string from the topic in the exception, so I know I have a connection, however I get this when I send:
(my exception stack trace)
caused by: weblogic.jms.common.InvalidDestinationException: JMSClientExceptions:055142] Foreign Destination, topic//(string from remote topic)
That was it! I had overlooked that part. It took a while to get everything configured properly, but now I and sending and receiving messages from a foreign MQ topic on another server. Many many thanks.
I suspect that you are using a regular WLS connection factory while using a destination that is in the foreign JMS server configuration. Can you check if your application is using a connection factory that is also defined in the foreign jms server configuration?