Generic JMS Adapter - WebSphere Connect

Posted by RichardElvin on 11-Jul-2017 10:50

OE11.6 / AIX

Hi,

I've been reading the White Paper: "Generic JMS Adapter for Progress - OpenEdge 11.5.1". Towards the end it gives examples for establishing SonicMQ and ActiveMQ connections with a host and port, but the WebSphere connection doesn't, it uses a Queue Manager name. Does that mean we need a local WebSphere Queue Manager installed? how do we connect to a remote queue manager?

Thanks!

Richard Elvin

Posted by Anand Adike on 12-Jul-2017 02:17

Hi Rechard,

Following are the two ways to connect IBM WebSphere MQ.
  • Local Queue Manager
  • Remote Queue Manager (using JNDI approach)
 
Procedure to setup Local Queue Manager:
 
Step 1: Need to update the WebSphereMQ connection factory class names in $DLC/properties/jmsProvider.propeties as shown below:
 
[WebsphereMQ]
javax.jms.ConnectionFactory=com.ibm.mq.jms.MQConnectionFactory
javax.jms.QueueConnectionFactory=com.ibm.mq.jms.MQQueueConnectionFactory
javax.jms.TopicConnectionFactory=com.ibm.mq.jms.MQTopicConnectionFactory
 
Step 2: Update $DLC/properties/AdminServerPlugins.propertes file with WebSphereMQ libraries under [PluginPolicy.Progress.SonicMQ] section as shown below.
 
[PluginPolicy.Progress.SonicMQ]
pluginclasspath=C:\Progress115\OpenEdge/java/progress.jar,C:\PROGRA~2\IBM\WEBSPH~1\java\lib\com.ibm.mqjms.jar
classpath=C:\Progress115\OpenEdge/java/progress.jar,C:\PROGRA~2\IBM\WEBSPH~1\java\lib\com.ibm.mqjms.jar
jvmargs=-DsonicMQExtensions=false -DjmsProvider=WebSphereMQ
 
Step 3: We need to start SonicMQ adapter with following command from proenv section.
               proenv>adaptman -i sonicMQ1 -start
Step 4: Provide the quque manager name as a value in Broker-URL in pcode and run it.
 
Procedure to setup Remote Queue Manager:
 
We need to follow below one extra step to connect WebSphere MQ remotely.
 
Develop AdminObjectFinder.java by specifying PROVIDER_URL and generate jar out of it and place it in pluginclasspath and classpath under [PluginPolicy.Progress.SonicMQ].
 
Please find the attached sample pcode.
[View:/cfs-file/__key/communityserver-discussions-components-files/26/pcode.zip:320:240]
 
Thanks,
Anand.

All Replies

Posted by Anand Adike on 12-Jul-2017 02:17

Hi Rechard,

Following are the two ways to connect IBM WebSphere MQ.
  • Local Queue Manager
  • Remote Queue Manager (using JNDI approach)
 
Procedure to setup Local Queue Manager:
 
Step 1: Need to update the WebSphereMQ connection factory class names in $DLC/properties/jmsProvider.propeties as shown below:
 
[WebsphereMQ]
javax.jms.ConnectionFactory=com.ibm.mq.jms.MQConnectionFactory
javax.jms.QueueConnectionFactory=com.ibm.mq.jms.MQQueueConnectionFactory
javax.jms.TopicConnectionFactory=com.ibm.mq.jms.MQTopicConnectionFactory
 
Step 2: Update $DLC/properties/AdminServerPlugins.propertes file with WebSphereMQ libraries under [PluginPolicy.Progress.SonicMQ] section as shown below.
 
[PluginPolicy.Progress.SonicMQ]
pluginclasspath=C:\Progress115\OpenEdge/java/progress.jar,C:\PROGRA~2\IBM\WEBSPH~1\java\lib\com.ibm.mqjms.jar
classpath=C:\Progress115\OpenEdge/java/progress.jar,C:\PROGRA~2\IBM\WEBSPH~1\java\lib\com.ibm.mqjms.jar
jvmargs=-DsonicMQExtensions=false -DjmsProvider=WebSphereMQ
 
Step 3: We need to start SonicMQ adapter with following command from proenv section.
               proenv>adaptman -i sonicMQ1 -start
Step 4: Provide the quque manager name as a value in Broker-URL in pcode and run it.
 
Procedure to setup Remote Queue Manager:
 
We need to follow below one extra step to connect WebSphere MQ remotely.
 
Develop AdminObjectFinder.java by specifying PROVIDER_URL and generate jar out of it and place it in pluginclasspath and classpath under [PluginPolicy.Progress.SonicMQ].
 
Please find the attached sample pcode.
[View:/cfs-file/__key/communityserver-discussions-components-files/26/pcode.zip:320:240]
 
Thanks,
Anand.

This thread is closed