Error in IBM MQ / LoadRunner JMS - jms

I am trying to send messages to IBM MQ through LoadRunner JMS, but getting the below exception
javax.naming.NameNotFoundException: com.ibm.mq.jms.MQConnectionFactory
at com.sun.jndi.fscontext.RefFSContext.getObjectFromBindings(RefFSContext.java:400)
at com.sun.jndi.fscontext.RefFSContext.lookupObject(RefFSContext.java:327)
at com.sun.jndi.fscontext.RefFSContext.lookup(RefFSContext.java:146)
at com.sun.jndi.fscontext.FSContext.lookup(FSContext.java:127)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at com.mercury.ws.jms.ConnectionManagerImpl.initialize(ConnectionManagerImpl.java:99)
at com.mercury.ws.jms.JMSSupportImpl.initialize(JMSSupportImpl.java:28)
at com.mercury.ws.jms.JMSBridge.init_jms(JMSBridge.java:154)

Maybe you are forgetting some .jars
There is an MQ JAR file called 'com.ibm.mq.allclient.jar', it can help you.
Also, here are solving this issue, read about that.

Related

JMSToolbox - can't connect to local IBM MQ queue manager - anyone got more info on config?

I have a simple dev instance of IBM MQ 9.1.x. It's got the default setup on QM1 with the default user/password.
I have a JMS application that does connect already, but when I try JMSToolbox (latest 5.14.0) and I put the com.ibm.mq.allclient-9.3.0.0.jar in the jre/lib folder, I get a proper MQ properties page and I put in the same values as my JMS app, it comes back and says:
com.ibm.mq.MQException: JMSCMQ0001: IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2035' ('MQRC_NOT_AUTHORIZED').
JMSCMQ0001: IBM MQ call failed with compcode '2' ('MQCC_FAILED') reason '2035' ('MQRC_NOT_AUTHORIZED').
I feel like it's probably something simple, but I can't quite figure it out. I am fairly new to MQ.
The proper way to configure JMSToolBox to connect to IBM MQ is documented here
The specific jars needed must be setup as described here , via the"Q Managers"tab
You must not add jars to the jre\lib directory or elsewhere
As for the error you receive, its probable either a misconfigured user/password/channel in JMSToolBox or the user you are using does not have the right to access MQ
(I'm the author of JMSToolBox)

Websphere Default Message Provider and Spring JMS

I am trying to consume messages from WebSphere SIB (default message provider). I did not find many articles related to this topic on the internet. I have tried configuration as described here but i get the below exception:
com.ibm.websphere.ms.Wnsinitalcontextfacotry is not of type javax.jms.ConnectionFactory
Has anybody integrated JMS with WebShphere Default message provider? If yes, can you please provide sample code?
I would like to know how to configure connection factory and topic.
CURRENT Status is Below:
I was able to configure JMS connection factory and topic but hit below exception
The security exception CAUGHT_EXCEPTION_WHILE_CONFIGURING_SSL_CLIENT_SOCKET: JSSL0130E: java.io.IOException: signals that an I/O exception of some sort has occurred.
Check this post. It provides steps and piece of plain Java code, how to access WebSphere Default messaging. You should be able to configure your Spring app based on that.

Trying to use jms publisher/subscriber in jmeter to connect to IBM MQ

We have been using jms point-to-point sampler in jmeter to post an xml based request to the MQ. Since then our application has changed and now the messages that are posted to the MQ are Serialable objects created with spring integration. To have a test around this, we tried using jms publisher/subscriber. All the online support we tried is pointing to connection to ActiveMQ. Has anyone tried using jms published to post object message to and IBM MQ?
The online approach gives you all the elements to switch to IBM MQ.
You would need to:
put IBM MQ jars in lib folder of jmeter
Find the infos needed for :
http://jmeter.apache.org/usermanual/component_reference.html#JMS_Subscriber
http://jmeter.apache.org/usermanual/component_reference.html#JMS_Publisher
This will help you:
http://leakfromjavaheap.blogspot.com/2014/07/jmeter-and-websphere-mq-series.html?_sm_au_=iVV5P5vR626sDt7V

Integrating websphere MQ with boomi

We are working on Integrating websphere MQ with boomi,
The Configuration in Boomi for JMS connector is as follows:
For JMS Connection :
Authentication Present:
User : adminstrator
password : xxxxx
JMS Server : Websphere MQ
Connection type : Single QM connection
Queue Manager : BoomiQMGR
Channel Name : BoomiSC
For JMS operation:
Destination : queue:BoomiQ(where BoomiQ is the Queue Name, "queue:" as mentioned in the boomi Documentation)
But the Problem is,
with these configuration we encounter the below error in boomi:
*"Test execution of TestProcess completed with errors. Embedded message: Unable to retrieve JMS message; Caused by: JMSCC0005: The specified value 'queue:BoomiQ' is not allowed for 'XMSC_DESTINATION_NAME'."
From what we can tell in reading around this occurs due to WebSphere MQ destination naming restrictions, we are using WEBSPHERE version : WS_MQ_V8.0_TRIAL_FOR_WINDOWS_ML(downloaded from IBM Site)
Can someone help us out on this?
Please suggest if we are missing anything.
Thanks in Advance.
The problem looks to be the format of the Queue Name: queue:BoomiQ isn't valid for the WMQ JMS client.
If the Queue on the QueueManager was say MyQueue, then either ensure that MyQueue is passed to JMS or queue:///MyQueue.

WebSphere MQ integration with WebLogic - issue sending messages to foreign queue

I'm testing a WebLogic MDB (running on my local Windows dev environment - Eclipse/WebLogic 10.3.2) with WebSphere MQ 6.0.1.0 (running on a Linux server). The WebSphere MQ components have been previously configured and I have the correct .bindings file.
I have followed the instructions described here.
I have no problem consuming messages that are placed on the MQ queue. However, when I attempt to configure the MDB to put messages back to the MQ queue I get the following warning upon server start-up:
<Warning> <JMSPool> <BEA-169808> <There was an error while making the initial
connection to the JMS resource named jms/WLSenderQCF from the EJB "TestMDB"
inside application "EJB Test 2EAR". The server will attempt the connection
again later. The error was javax.jms.JMSException: MQJMS1068: failed to obtain
XAResource>
If I place a message on the queue, my MDB consumes the messages, but these exceptions are thrown when the MDB attempts to put the message to the MQ Queue:
javax.jms.JMSException: MQJMS1068: failed to obtain XAResource...
javax.transaction.xa.XAException: client connection not XA enabled...
java.lang.NullPointerException
Anyone run into this and knows what the problem is?
Thanks for any help.
One issue seems to be the version of MQ you're using. It is ancient. IBM took MQ 6 out of support quite a while ago (Sept '12! http://www-01.ibm.com/support/docview.wss?uid=swg21584325).
Things got a lot easier when IBM decided to include the extended transactional client in the product for free: http://www-01.ibm.com/support/docview.wss?uid=swg21584325
So one option might be to upgrade to a version which includes this out of the box:
7.0.1.12+
7.1.0.5+
7.5
8.0
Otherwise... look into the v6 documentation on how to enable the 'extended transactional client' for JMS assuming you paid for it.

Resources