Versions Compared

Key

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

This topic provides a reference for configuring SOAtest for popular JMS providers.

Sections include:

Table of Contents
maxLevel1

...


To add the required jar files (listed in the tables below) to the SOAtest classpath, complete the following:

  1. Go to Parasoft> Parasoft > Preferences.
  2. Open the Parasoft > System Properties page.
  3. Click Add JARS and choose and select the necessary JAR files to be added.

...

  • java.naming.security.principal=<username><USERNAME>
  • java.naming.security.credentials=<password><PASSWORD>

Amazon Simple Queue Service (SQS)

...

accessKey

secretKey

region

Access key credentials for CLI, SDK, and API access.
serialNumberNumber that uniquely identifies the device if multi-factor authentication (MFA) is enabled. For virtual MFA devices, the serial number is the the Amazon resource name (ARN) of the device as shown on the AWS security credentials page.
tokenCodeThe value returned by your MFA device, such as Google Authenticator.
durationSecondsThe value specifying how long the temporary MFA credentials will be valid.

...

ForFor Apache Qpid
Minimum required JARs

Found in qpid-java-client-{ver}.tar.gz from http://qpid.apache.org/download.html.

The jars vary depending on the version of Qpid. The jar for Qpid 0.8 includes the following:

  • backport-util-concurrent-2.2.jar
  • geronimo-jms_1.1_spec-1.0.jar
  • mina-core-1.0.1.jar
  • mina-filter-ssl-1.0.1.jar
  • qpid-all.jar
  • qpid-client-0.8.jar
  • qpid-common-0.8.jar
  • slf4j-api-1.6.1.jar
Connection URL JNDI propertyconnectionfactory.<jndiname> 
For example:
connectionfactory.local = amqp://user:password@clientid/testpath?brokerlist='tcp://localhost:5672'
Factory class

JNDI Initial Context factory class
- org.apache.qpid.jndi.PropertiesFileInitialContextFactory

Learn more

https://cwiki.apache.org/qpid/how-to-use-jndi.html

 

Anchor
GlassFish
GlassFish
GlassFish MQ

...

Info

What if you don’t have WAS 7.0 or later?

If you aren’t using (or don’t have access to) a WAS 7 installation, download and install the IBM Client for JMS, which also works with WAS 6.0.2 and later:

  1. Download the JMS Client installer jar from http://www-01.ibm.com/support/docview.wss?uid=swg24012804.
  2. Follow the instructions on the download page to install both the JMS and JNDI jars for the Sun JRE. The command to install the client jars is similar to:
    "java -jar sibc_oeminst-o0902.06.jar jms_jndi_sun C:\ibmjms"
    The client jars will be installed under the lib folder.
  3. Add the JNDI property com.ibm.CORBA.ORBInit=com.ibm.ws.sib.client.ORB
    • For simplicity, this jndi property can be set globally in a jndi.properties file in the JRE's lib folder.
    • For the standalone build of this product, the JRE lib folder is under <INSTALL_DIR>/plugins/com.parasoft.ptest.jdk.eclipse.core.web.<OS>.<ARCH>_<VERSION>/jdk/jre/lib.
    • This JNDI property is not needed when using the jars from the WAS 7 runtimes folder.

Anchor
IBM_Web
IBM_Web
IBM

...

MQ (MQ Series)

Scroll Table Layout
widths30%,70%

For

For the WebSphere IBM MQ JMS provider

Minimum required JARs

For IBM MQ 9

You can find these under <WEBSPHERE<IBM_MQ_INSTALL_DIR>/java/lib:

  • com.ibm.mq.allclient.jar.

For IBM MQ 8

You can find these under <WEBSPHERE<IBM_MQ_INSTALL_DIR>/java/lib:

  • com.ibm.mq.allclient.jar.

For IBM MQ 7.0

You can find these under <WEBSPHERE<IBM_MQ_INSTALL_DIR>/java/lib:

  • com.ibm.mq.jar
  • com.ibm.mqjms.jar
  • com.ibm.mq.commonservices.jar 
  • com.ibm.mq.headers.jar
  • com.ibm.mq.jmqi.jar
  • connector.jar
  • dhbcore.jar
  • com.ibm.mq.pcf.jar

You also need to download the following jar:

  • ME01: WebSphere IBM MQ - Initial Context Factory — mqcontext.jar

For IBM MQ 6.0

You can find these under <WEBSPHERE<IBM_MQ_INSTALL_DIR>/java/lib:

  • com.ibm.mq.jar
  • com.ibm.mqjms.jar - connector.jar
  • dhbcore.jar
  • jta.jar

You also need to download the following jars:

  • MS0B: WebSphere IBM MQ Java classes for PCF — com.ibm.mq.pcf.jar
  • ME01: WebSphere IBM MQ - Initial Context Factory — mqcontext.jar

IBM MQ Client Download

The jars from <WEBSPHERE<IBM_MQ_INSTALL_DIR>/java/lib are also included in the MQ Client. The MQ 6 Client is no longer available from IBM. The MQ 7 Client is available at http://www-01.ibm.com/support/docview.wss?uid=swg24019253

Typical provider URL pattern

yourhostname:1414/SYSTEM.DEF.SVRCONN

Factory class

WebSphere IBM MQ JNDI Initial Context factory class - com.ibm.mq.jms.context.WMQInitialContextFactory

SSL configuration

WebSphere IBM JMS clients can achieve SSL connections by setting the appropriate properties in the initial context. Both WebSphere IBM MQ and WebSphere IBM JMS clients will set the same properties for SSL connectivity.

JMS messaging without JNDI

Under the properties tab, define the following properties:
Name: Value
provider:  WebSphere IBM MQ
queue.manager: [your queue manager name]
channel: [your channel name]
port:  [port number, the default WebSphere 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 Websphere IBM MQ server by sending the user's login name. This is typically the user name username that was provided when logging into the workstation before starting SOAtest/Virtualize.

If the MQ server does not recognize the user nameusername, 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 Websphere 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 WebSphere 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.

For more details on this error, see http://www.mqseries.net/phpBB/view-topic.php?t=40640.
 

Learn more

http://www-01.ibm.com/software/integration/wmq/library/

http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/topic/com.ibm.mq.csqzaw.doc/jm10320_.htm

...