TIBCO RV Tutorial: How to Send and Receive Certifed RV Messages in TIBCO

In one of my previous tutorials I taught you how to send and receive RV messages in TIBCO using reliable RV. In this TIBCO RV tutorial, I will teach you step by step how you can Publish and Subscribe Certified RV messages in TIBCO.

If you are yet unclear about two types of RV message communication, you can refer to my post Fundamental of TIBCO RV: How TIBCO RV Works?

Step 1: Create Certified RV Transport

Add Rendezvous Transport from RV Palette by dragging it to the design panel. In the configuration of your RV transport, give values for RV Daemon, Network and Service.

Configuration of RV Transport that I made is shown in the screenshot below:

tibco certifed rv transport configuration

In the Advanced tab of our RV Transport, we choose Certified as RV type, give a CM name and also specify Ledger file for this certified transport.

Complete configuration of Advanced tab of RV transport will look like below:

tibco certified rv advanced tab

Step 2: Create a process to Publish Certified RV Messages

After successfully configuring Certified type RV transport, now we move towards Certified RV message publishing in TIBCO. Create a new process CertifiedPublish and inside process, use Publish Rendezvous Message activity (available in Rendezvous Palette).

In the configuration tab of Publish RV Message activity, we choose RV transport (Certified RV transport that we created in Step 1). We also specify some subject at which we will publish our RV message.
Configuration of Publish Rendezvous Message activity will look like below:

tibco publish certified rv message configuration

In this example tutorial of TIBCO Certified RV messaging, we will publish a simple message string from our Publish Rendezvous Message activity. So we need to create a String element in Input Editor tab as shown below:

tibco certified rv publish message input editor

 

In the Input tab, we will use XPath formula to concatenate current date and time with the hardcoded string “Sent from Certifed Publisher at:”

Input tab of our RV Publisher activity will look like below:

certified rv publish input mapping

 

Now we are done with our Certified RV Publishing process. Validate the process and move on to creating a process for Subscribing to certified RV message.

Step 3: Create a process to Subscribe to Certified RV Messages

Create a new TIBCO BW process CertifiedSubscriber (you can name it any). In this process, we will add Rendezvous Subscriber activity to receive RV messages on certified RV transport.

In the Configuration tab of RV Subscriber activity, use same transport and subject as used in the RV Publisher.

Configuration of RV Subscriber activity will be as shown in below screenshot:

tibco certified rv subscriber configuration

In the Output Editor tab of this RV Subscriber activity we need to create a String element in the same way as created for our Publish Rendezvous Message activity in Step 2.
This is shown in screenshot below:

certified rv subscriber output editor

As our subscriber process has been started by receiving a RVCM message, we need to use Confirm activity to acknowledge the publisher upon receipt of message.

In confirm activity configuration, we choose RV subscriber as confirm event as shown below:

certified rv confirm activity configuration

In order to see the results properly, I have added a Write File activity to write the RVCM message to a file in local file system.

Input mapping of Write File activity is shown in below screenshot:

tibco certified rv write file input mapping

 

This completes development part of our both publishing and subscribing processes.

Now we can move towards testing phase.

Step 4: Test Certified TIBCO RV Messaging in Designer

Validate the project and after successful validation, load both processes in designer tester. After loading the processes in tester, create a new job for publisher process CertifiedPublish. As you can see in screenshot below, both processes have executed completely:

certified rv publish and subscriber processes run successfully tester

Now we need to go into the individual processes in tester to verify that everything has worked fine. If we see Input Data tab of RV Publishing activity in CertifiedPublish process in tester, we can see that it has published a message on the given subject through Certified transport as shown below:

tester certified rv publish input data

By going into the process CertifiedSubscriber in the tester, we can see in the Output tab of RV Subscriber activity that published message has been successfully received by this activity:

tester certified rv subscriber received data

Now we need to go and look into the created file and see if subscribed message has been written in the file or not.

Wow great! As shown in below screenshot, message is written rightly in the file:

tester certified rv data in file

 

Now it is the time to test for a scenario specific to Certified RV messaging. What we are going to do now is that we will load and run only Publisher process and won’t load subscriber. In this way, message will get published but will not get an acknowledgement from the subscriber and will remain there in the Ledger file.

As you can see in screenshot below, Publisher process has run successfully without loading subscriber process:

tester run only certified rv publisher process

Ledger file is created in the path which was specified in the RV transport configuration Advanced tab as you can see below:

certified rv ledger file

Now, let’s reload both publisher and subscriber processes in designer tester and run a job for publishing process:

tester certified rv get old and new rv message from ledger file
Now you can see that two jobs have run for the Subscriber process though we ran only one job for the publisher. You know why? Guess?

Ok I tell you the reason. When we ran a test by loading only Publishing process, the message which was published didn’t get an acknowledgement and was stored in ledger. Now when we ran both processes, subscriber has received that queued message as well and acknowledged both.

Now if you look into the file where our process writes the subscribed message, you can see that it has 3 messages in total with their timestamp information showing when they were published:

tester certified rv show all messages in file

Ajmal Abbasi

Ajmal Hussain Abbasi is Integration Consultant By Profession with 13+ years experience in Integration domain mainly with TIBCO products. He has extensive practical knowledge of TIBCO Business Works, TIBCO Cloud, TIBCO Flogo, TIBCO Mashery, TIBCO Spotfire, EMS and TIBCO ActiveSpaces. He has worked on a number of highly critical integration projects in various sectors by using his skills in TIBCO Flogo, TIBCO API Management (Mashery), TCI, Tibco Designer, TIBCO Business Studio, Adapters, TIBCO EMS, RV, Administrator, TIBCO BE, TIBCO ActiveSpaces etc. Ajmal Abbasi has experience with MuleSoft ESB as well. Ajmal Abbasi is also experienced in the area of API Management particularly with WSO2 API management platforms. Ajmal Abbasi is also experienced in developing solutions using Core Java and J2EE Technologies. You can contact Ajmal Abbasi for Consultancy, Technical Assistance and Technical Discussions.

More Posts - Website - Facebook - LinkedIn - YouTube

8 thoughts on “TIBCO RV Tutorial: How to Send and Receive Certifed RV Messages in TIBCO

  1. nsht.kumar78

    Hello Sir,
    I am new to TIBCO. your blog is very helpful to lern TIBCO. I would like to thank you for providing us all lessons about TIBCO. Please keep updating this blog with you knowledge so i can keep learning and improve my knowledge about TIBCO.

    Thanks!
    Nick

    Reply
  2. Rahul

    Good Post. Clear explanation with step by step implementation.
    Really helpful for TIBCO Developers.

    Reply
  3. badri

    Hello Sir….. This is Badri, I am new to Tibco BW, I have a dought in Tibco bw in rendzvous activites. Please send me a example for publish rendezvous and reply and request examples,how to send a message to subscriber, how to recive suscriber a message from publisher and how to send a reply to publisher. please send me an example…….

    Reply
  4. kiran

    i have doubt in onstart up and on shut down..
    pls clarify this topics

    Reply
  5. pruthvi

    What is the purpose of using confirm acticity? What happens if we dont use it? and what are the other scenarios in which we use confirm activuty? And why null activity is used can anyone explain?

    Reply
  6. sagarbabu

    sir i have a doubt in critical section group.
    plzz explain with examples

    Reply
    1. Ajmal Abbasi Post author

      Dear Sagar,

      Critical Section group is used to achieve synchronisation so that only one process instance can execute the activities in such group at a time and any other instances will be in a wait state till that instance completes processing of critical section group.

      Reply

Leave a Reply to nsht.kumar78 Cancel reply

Your email address will not be published. Required fields are marked *