JMS Bindings

JMS bindings integrate JMS applications with TIBCO ActiveMatrix. The JMS bindings convert JMS messages to TIBCO ActiveMatrix messages and vice versa.

Java Message Service (JMS) is a Java specification for messaging between applications. JMS is based on the creation and delivery of messages. The creator of the message is known as the publisher and the receiver of the message is known as the subscriber. A JMS server acts as an intermediary for the message and manages its delivery to the correct destination.

Configuration Overview

JMS bindings enable you to establish request and response message communication with a JMS server. In other words, adding a JMS binding enables a particular application to receive JMS messages or to send messages to the JMS server (JMS destination).

For an application to receive messages, for example, it must subscribe to a JMS server on a destination, which is defined by the JMS Connection Factory Configuration, JMS Destination Configuration, and JNDI Connection resource instances.

For the application to send messages, configuration details must be provided for the runtime library through the JMS Connection Factory, JMS Destination, and JNDI Connection resource instances.

The following figure illustrates an example of the request and response message communication sequence of a service and of a reference within a TIBCO ActiveMatrix component.
Service and Reference Request and Reply Communication

The communication sequence for the service, which corresponds to the numbers shown in the figure, is:

  1. The service gets a message from the destination specified by the request destination.
  2. The message is processed and sent to the component implementation.
  3. If a response is received from the component implementation, and an incoming message was configured for a JMSReplyTo destination--either a temporary one or one specified as a service outbound destination--then the output goes to that destination.
  4. The destination receives the message.

The communication sequence for the reference, which corresponds to the numbers shown in the figure, is:

  1. A message is sent by the reference to a destination specified by the outbound destination.
  2. Once the message goes to the destination, there is another application listening to that message.
  3. The application gets the message and puts a response to JMSReplyTo specified on the incoming message--either a temporary one or one specified as a request destination.
  4. The reference listens for responses on that destination and then receives one (4).

Use Cases

TIBCO ActiveMatrix supports the following JMS use cases and corresponding MEPs:

  • Service binding - You can create a service referencing port types of a component hosted inside TIBCO ActiveMatrix. The component hosted inside TIBCO ActiveMatrix dictates the WSDL file and provides services.
    • TIBCO ActiveMatrix subscriber communicating with a JMS publisher - In-Only
    • TIBCO ActiveMatrix server communicating with a JMS requestor - In-Out
  • Reference binding- You can create a reference for endpoints in an existing JMS application. The JMS application dictates the WSDL file and provides services.
    • TIBCO ActiveMatrix publisher communicating with a JMS subscriber - In-Only
    • TIBCO ActiveMatrix client communicating with a JMS responder - In-Out