Welcome to the new Parasoft forums! We hope you will enjoy the site and try out some of the new features, like sharing an idea you may have for one of our products or following a category.

Running SOATest With IBM Message Broker

Speedy993
Speedy993 Posts: 75

I recently upgraded from SOATest 2021.2 (10.5) to 2024.2 (10.7) and am having trouble running some of the tests created in 2021.2. These tests involve dropping and retrieving IBM Message Queue XML messages to and from the message queues. This was done with a shared JMS connection property.

In version 2021.2 we added 2 jars files that were from the development tool IBM Broker Toolkit to the classpath in System Properties: com.ibm.mq.jar and com.ibm.mqjms.jar. We used JMS for the Transport when dropping a message on the queue. These settings appear to no longer work with the new version of SOATest.

Looking at the documentation for version 2024.2 https://docs.parasoft.com/display/SOAVIRT20242/IBM+MQ+Tools+Reference
It talks about adding two different jar files to the classpath which I did in System Properties. Also mentioned is setting a JVM property and I assume that is in in the Properties tab of the defined connection property. For the Transport tab of dropping the message on he queue, do I still use JMS or do I now need IBM MQ and if IBM, how do I determine the setting for everything. Is this where I need to reach out to my Message Queue admin?

Sorry about my ignorance. This has been a part of SOATest that was configured prior to me time with this group and has always worked well. But now it needs to be updated with this new version of SOATest.

Thanks!

Comments

  • benken_parasoft
    benken_parasoft Posts: 1,313 ✭✭✭
    edited January 17

    There is no change in that IBM MQ can still be accessed using JMS API. Your screenshot shows you using the JNDI file system provider which still works as we document here: JMS Provider Configuration

    What changed is that you MUST use IBM's "allclient" jar. Older versions of IBM MQ client jars are not entirely compatible with modern releases of Java including 17 and 21. "com.ibm.mq.jar" and "com.ibm.mqjms.jar" may have been from some really old version, like MQ 6. MQ 7 required a handful of jars. Later, IBM simplified things where MQ 8 and 9 have an "allclient" jar. Additionally, "allclient" depends on a "json.jar".

    Whether to access IBM MQ using JMS API or IBM's "native" MQ API is up to you. If you were using JMS API then you can continue to do so. When using the JNDI file system provider you want to make sure that your "C:/JNDI-Directory" directory still contains the ".bindings" file for your particular queue manager.