TIBCO | EMS Message Transfer Utility

In this post we will be creating TIBCO EMS utility to transfer messages from one EMS instance to other EMS instance(from Domain 1 to Domain 2). Developer needs to keep some utilities handy to resolve production issues. Some times it happens that due to wrong EMS configuration in deployment  steps messages meant for DOMAIN-1 get routed to DOMAIN-2 or other domains  and piled up there. This messages can not be purged as messages are important from enterprise point of view(Order messages, transaction messages). Below steps will create TIBCO BW utility to transfer messages, we can also create same utility with help of Java code. 


Basic idea is simple. We will create two JMS connections and transfer messages using JMS Queue receiver and JMS Queue Sender activity.

Step 1 : Create two JMS connections objects(Domain -1 & Domain -2)






Keep JMS connection details such as username/password/url in Global variables so that they can be changed at deployment time. 

Step 2 : Create Process with JMS Queue receiver, JMS Queue Sender and confirm activity.



Keep the ACK mode of JMS Queue receiver to Client ACK for not auto confirming messages.




Map message body of JMS Queue sender with JMS Queue receiver body.



Messages from Domain 2 are received on JMS Queue receiver and sent to JMS Queue Sender of Domain 1. Keep source/destination queue names in GVs. As you can see above I have kept JMS Max Sessions as 1 to test code, we can keep it to 10. At last we are confirming the messages received on Domain 2 once they are sent to Domain 1. We can keep Write to Log activity to check status or we can check messages on both queues from GEMS(Graphical EMS) Admin tool.

Comments

Popular posts from this blog

Spring | Using TIBCO EMS with Spring framework

TIBCO | For Loop - Accumulate output

TIBCO | JNDI Server & JMS Instance creation