Configuring Queues

For communication between two different enterprises, a couple of gateways are needed to transport messages across two firewalls, and to transfer messages from the Q_ECM_INTGR_STD_OUTBOUND_INTGR_MSG queue of the sender instance to the Q_ECM_INTGR_STD_INBOUND_INTGR_MSG queue of the receiver instance.

The same physical queue (Q_ECM_INTGR_STD_INBOUND_INTGR_MSG) hosted on one of the JMS servers (the one connected to TIBCO MDM M/P) can be used, and you can map it to the following:

  • logical queue (StandardOutboundIntgrMsg) used for sending outbound integration messages from the Brand Owner instance, and
  • logical queue (StandardInboundIntgrMsg) used for receiving inbound integration messages in the TIBCO MDM M/P instance.

This is possible because the messaging framework allows:

  • Mapping between logical queue name and physical queue names.
  • Connectivity to multiple JMS servers from the same instance.

Since Brand Owner will need to connect to two different queue managers, it will need two different clusters.

Note: The support for MQSeriesCluster has been removed from the TIBCO MDM 9.1.0 release. Therefore, this section is deprecated.

Procedure

  1. If the Brand Owner instance is using MQSeriesCluster, add the following properties using Configurator. This is just a copy of the MQSeriesCluster section with a different queue manager (VeloselMPJMSQMgr) and a different IP address (VeloselMPJMSServerIPAddress):
    1. Properties needed by the messaging framework:
    • com.tibco.cim.queue.cluster.MQSeriesCluster2=\ inherit:com.tibco.cim.queue.cluster.DefCluster
    • com.tibco.cim.queue.cluster.MQSeriesCluster2.clusterLiaison.class=com.tibco.mdm.integration.messaging.queue.ibm.MQSeriesClusterLiaison
    • com.tibco.cim.queue.cluster.MQSeriesCluster2.replaceAllConnOnFailure=true
    1. Vendor specific properties:
    • com.tibco.cim.bus.cluster.MQSeriesCluster.clusterLiaison.clusteredQMgrs=LocalhostQMgr
    • com.tibco.cim.queue.cluster.MQSeriesCluster2.clusterLiaison.clusteredQMgr.LocalhostQMgr.connFactory.mqQMgr=VeloselMPJMSQMgr
    • com.tibco.cim.queue.cluster.MQSeriesCluster2.clusterLiaison.clusteredQMgr.LocalhostQMgr.connFactory.mqHost=VeloselMPJMSServerIPAddress
    • com.tibco.cim.queue.cluster.MQSeriesCluster2.clusterLiaison.clusteredQMgr.LocalhostQMgr.connFactory.mqPort=
    • com.tibco.cim.queue.cluster.MQSeriesCluster2.clusterLiaison.clusteredQMgr.LocalhostQMgr.connFactory.mqChannel=SCC_ECM
  2. Change the mapping of the logical queue to the physical queue on the Brand Owner instance to use Q_ECM_INTGR_STD_INBOUND_INTGR_MSG (instead of Q_ECM_INTGR_STD_OUTBOUND_INTGR_MSG) hosted on the JMS server connected to the TIBCO MDM M/P instance (the queue will be hosted by MQSeriesCluster2).
  3. Set the following properties in the Configurator:
    1. Properties needed by the messaging framework:
    • com.tibco.cim.queue.queue.StandardOutboundIntgrMsg=\inherit:com.tibco.cim.queue.queue.DefOutboundIntgrQueue
    • com.tibco.cim..queue.queue.StandardOutboundIntgrMsg.cluster=MQSeriesCluster2
    • com.tibco.cim.queue.queue.StandardOutboundIntgrMsg.msgIO=\inherit:com.tibco.cim.queue.msgIO.process.OutboundIntgrMsgIOProcess
    • com.tibco.cim.queue.queue.StandardOutboundIntgrMsg.addToJNDI=true
    1. Cluster specific properties - JNDI:
    • com.tibco.cim.queue.queue.StandardOutboundIntgrMsg.cluster.JNDICluster2.jndiQueueName=Velosel_Queue_StandardInboundIntgrMsg
    1. Cluster specific properties - MQSeries:
    • com.tibco.cim.queue.queue.StandardOutboundIntgrMsg.cluster.MQSeriesCluster2.mqBaseQueue=Q_ECM_INTGR_STD_INBOUND_INTGR_MSG
  4. Change the mapping of the logical queue to the physical queue on the Brand Owner instance to use Q_ECM_INTGR_STD_OUTBOUND_INTGR_MSG (instead of Q_ECM_INTGR_STD_INBOUND_INTGR_MSG) hosted on the JMS server connected to the TIBCO MDM M/P instance (the queue will be hosted by MQSeriesCluster2).