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-podis 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