IBM WebSphere MQ Adapter Sample

Overview

This sample demonstrates the use of the StreamBase IBM WebSphere MQ input and output adapters.

IBM MQ Middleware Dependencies

You must obtain the IBM MQ Java libraries directly from IBM. The easiest way to make the IBM MQ API accessible to StreamBase is to copy the API JARs, com.ibm.mq.jar and connector.jar, into the StreamBase installation in the lib/ext directory.

If copying the JAR files to lib/ext is impractical, then for running IBM MQ adapter applications in StreamBase Studio, you must add all the IBM MQ JARs to the Java Build Path. For running IBM MQ adapter applications from the command line, you must add the IBM MQ API JARs to the server's CLASSPATH, either by setting an environment variable, or via the <java-vm> element of the server configuration file.

Importing This Sample into StreamBase Studio

In StreamBase Studio, import this sample with the following steps:

  • From the top menu, click FileLoad StreamBase Sample.

  • Select this sample from the Embedded Input Adapters list.

  • Click OK.

StreamBase Studio creates a project for this sample.

Sample Location

By default, the sample files are installed in:

On Windows

C:\Program Files\StreamBase Systems\StreamBase.n.m\sample\adapter\embedded\ibm-websphere-mq\

On UNIX

/opt/streambase/sample/adapter/embedded/ibm-websphere-mq/

When you load the sample into StreamBase Studio, Studio copies the sample project's files to your Studio workspace. StreamBase Systems recommends that you use the workspace copy of the sample, especially on UNIX, where you may not have write access to /opt/streambase. In the default installation, the path to this sample in your Studio workspace is:

UNIX:       
   ~/streambase-studio-n.m-workspace/
      sample_adapter_embedded_ibm-websphere-mq
Windows XP:
   C:\Documents and Settings\username\My Documents\
      StreamBase Studio n.m Workspace\sample_embedded_ibm-websphere-mq
Windows 7 and Windows Vista:
   C:\Users\username\Documents\StreamBase Studio n.m Workspace\
      sample_embeddedibm-websphere-mq

Running This Sample in StreamBase Studio

Note

To use this sample, you must have access to a valid IBM WebSphere MQ server.

  1. In the Package Explorer view, double-click ibm-websphere-mq.sbapp.

  2. Select the MQInput adapter icon to open the Properties view for the adapter.

  3. Select the Adapter Properties tab and enter valid values for Host Name, Port Number, Queue Manager, Queue Name, and Channel.

  4. Repeat the previous two steps for the MQOutput adapter. Enter values for Reply To Queue Manager and Reply To Queue Name as well.

  5. Click the Run button. This opens the SB Test/Debug perspective and starts the application.

  6. In the Test/Debug Perspective, open the Application Output view. If connectivity to your IBM WebSphere MQ server is configured correctly, look for tuples emitted on the InputStatus and OutputStatus streams indicating the adapter has connected successfully.

  7. In the Manual Input view, select the SendMessage stream. Enter a value in the Payload field, set the MyTuple field to null, and press Send Data.

  8. Observe that the payload value is emitted on the ReceivedMessage stream.

  9. When done, press F9 or click the Stop Running Application button.

Running This Sample in Terminal Windows

This section describes how to run the sample in UNIX terminal windows or Windows command prompt windows. On Windows, be sure to use the StreamBase Command Prompt from the Start menu as described in the Test/Debug Guide, not the default command prompt.

  1. Open three terminal windows on UNIX, or three StreamBase Command Prompts on Windows. In each window, navigate to your workspace copy of the sample, as described above.

  2. In window 1, type:

    sbd ibm-websphere-mq.sbapp

  3. In window 2, type:

    sbc dequeue -v

    This window displays the tuples dequeued from the adapters' output ports.

  4. In window 3, send a message to the MQ server:

    echo This is the payload,null | sbc enqueue SendMessage

  5. Observe in windows 2 that a tuple containing the payload value from above is emitted on the ReceivedMessage stream.

  6. In window 3, type the following command to terminate the server and dequeuer:

    sbadmin shutdown