Enabling the Liberty feature to integrate with IBM MQ
To integrate with IBM MQ, enable the MQ JMS client feature and add the IBM MQ
resource adapter. JavaMail is enabled by default.
Procedure
To integrate with MQ, complete the following steps.
- To download and generate the MQ resource adapter file, follow steps 1 - 4 in Installing the resource adapter in Liberty.
- Add the downloaded MQ resource adapter files, such as
wmq.jmsra.rar, to the Workflow server pod, by using the filestore persistent
volume claim (PVC) that is mounted at /opt/ibm/bawfile. For more information,
see Accessing files for applications and configurations.
For example, run the following command to copy the file to the Workflow server location /opt/ibm/bawfile, where wmq.jmsra.rar is the file you want to copy and
workflow-server-pod
is the name of one of your Workflow pods.
The files are stored in the persistent volume (PV) related to the PVC and are kept between restarts.oc cp wmq.jmsra.rar workflow-server-pod:/opt/ibm/bawfile/
Note: For Workflow Process Server Runtime, you must set up node.customFilePVC. See Installing a CP4BA Workflow Process Service production deployment. - Configure the resource adapter and JMS queue to connect to your MQ engine by customizing
the Liberty custom XML file that is set in the liberty_custom_xml parameter.
The settings will be merged into the Liberty settings for the component. For more information about
Liberty customization, see Administering Liberty manually. The XML snippet must be in the
<server>
element, as shown in the following example.<server> <!-- configure wmqJmsClient.rar.location pointing to your resoruce adapter file --> <variable name="wmqJmsClient.rar.location" value="/opt/ibm/bawfile/wmq.jmsra.rar" /> <!-- configure queue connection factory and queue to connect to your MQ engine --> <variable name="MQ_CONNECTION_LIST" value="yourmq.connect.name(1414)" /> <variable name="MQ_QMGR_NAME" value="VDCTQMI" /> <variable name="JMS_ASPC001_ECE_CHN" value="VDI.ASPC001" /> <jmsQueueConnectionFactory id="jms/QCF" jndiName="jms/QCF"> <properties.wmqJms connectionNameList="${MQ_CONNECTION_LIST}" queueManager="${MQ_QMGR_NAME}" channel="SYSTEM.DEF.SVRCONN" transportType="CLIENT" targetClientMatching="false" /> <connectionManager connectionTimeout="20s"></connectionManager> </jmsQueueConnectionFactory> <!-- JMS Queues --> <jmsQueue jndiName="jms/ASPC001_ECE_CHN" id="jms/ASPC001_ECE_CHN"> <properties.wmqJms baseQueueManagerName="${MQ_QMGR_NAME}" baseQueueName="${JMS_ASPC001_ECE_CHN}" /> </jmsQueue> <server>
-
To customize Liberty with your XML snippet, follow the instructions for your environment
type.
- For Workflow Runtime: Customizing Business Automation Workflow properties
- For Workflow Process Server Runtime: Customizing the Liberty configuration
- For Workflow Authoring or Workflow Process Server Authoring: Customizing Business Automation Studio properties