Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space FUNCTDEV and version SVC2025.3

...

For

IBM MQ JMS provider

Minimum required JARs

Typical provider URL pattern

The directory path containing the .bindings file.

Example:

file:/C:/JNDI-Directory

Detailed example of running IBM MQ JMSAdmin to setup JMS Administered objects in the JNDI .bindings file

Detailed example of running IBM MQ Explorer to setup JMS Administered objects in the JNDI .bindings file

Factory class

IBM MQ JNDI Initial Context factory class

com.sun.jndi.fscontext.RefFSContextFactory

Connection Factory

ConnectionFactory name as defined in the .bindings file.

JMS messaging without JNDI

Under the properties tab, define the following properties:
Name: Value
provider:  IBM MQ
queue.manager: <QUEUE_MANAGER_NAME>
channel: <CHANNEL_NAME>
port: <PORT> (the default IBM MQ port is 1414)
With this configuration, SOAtest/Virtualize will create the connection factory using the provided parameters as follows:

Code Block
  import com.ibm.mq.jms.*;
  ...
  MQConnectionFactory cf = new MQConnectionFactory();
  cf.setHostName(hostname);
  cf.setPort(port);
  cf.setQueueManager(queuemanager);
  cf.setChannel(channel);
  cf.setTransportType(JMSC.MQJMS_TP_CLIENT_MQ_TCPIP);   
  cf.setFailIfQuiesce(JMSC.MQJMS_FIQ_YES);
  cf.setUseConnectionPooling(true);


 Additional information

IBM's JNDI provider authenticates itself with the IBM MQ server by sending the user's login name. This is typically the username that was provided when logging into the workstation before starting SOAtest/Virtualize.

If the MQ server does not recognize the username, then your tool will fail with the error "javax.jms.JMSSecurityException: MQJMS2013: invalid security authentication supplied for MQQueueManager".

This error can be resolved by adding a Windows user account on the IBM MQ server machine. This account should 1) have the same username as the account on the local machine where SOAtest is running and 2) be a member of the "mqm" IBM MQ Administration Group.Alternatively, use a different username by changing the value of the user.name Java System property. This system property can be configured by starting SOAtest using soatest.exe -J-Duser.name=username where username is the username you want to use. In some configurations using an empty username via soatest/virtualize.exe -J-Duser.name= will work. Using SYSTEM for the user.name property may also work in some configurations. It is also possible to modify Java system properties during test suite execution by using an Extension Tool to call the java.lang.System.setProperty() method from Sun's Java API.

Learn more

https://www.ibm.com/docs/ibm-mq/

...