IBM Rational Integration Tester (RIT) stub listening to a TIBCO Enterprise Message Service (EMS) queue processes every other message.
- You have created a stub in RIT that virtualizes a TIBCO EMS component.
- The stub consumes messages from the EMS queue.
- The stub runs but does not receive every message sent to the queue.
This is the expected default behavior of the TIBCO EMS queue manager.
If an application is running at the same time as the stub, the queue has two equal subscribers. The EMS queue manager will do a round robin and forward every other message to the stub as well as the application.
For other queue managers such as IBM WebSphere MQ, Rational Integration Tester provides an API to intercept the queue messages and forward all of them to the stub. There is no such API for the TIBCO queue manager.
Resolving the problem
This issue can be resolved by not running the other application that is communicating with the TIBCO EMS queue.
Alternatively the TIBCO EMS can be configured to have an "exclusive" property so that if the stub is the first subscriber to the queue it will receive every message on the queue. See the related Tech Note below:
TIBCO Enterprise Message Service™ (EMS) stub processing all messages on a queue