When a program first opens a connection, the connection is stopped—that is, it does not deliver inbound messages. To begin the flow of inbound messages, the program must explicitly call
tibemsConnection_Start. (Outbound messages flow even before calling
tibemsConnection_Start.)
The EMS C and COBOL APIs do not support the JMS methods
createConnectionConsumer and
createDurableConnectionConsumer (which are optional in the JMS specification).
When a program uses a connection to send messages, the send calls can detect problems with the connection, and notify the client program (synchronously) by returning error codes.
However, when a program uses a connection only to receive messages, the client lacks that opportunity to detect problems. Instead, programs can handle such errors asynchronously by defining an exception listener callback (see
tibemsExceptionCallback on page 225).