Below is a basic Websphere Message Broker JMS flow using Websphere MQ JMS.
Setup of Websphere MQ for JMS flow:
Step 1: Create JMS Initial Context
Step 2: Create Connection Factory
Specify the WMB Queue Manager as the JMS Queue Manager
Easy way to JMS Queues it to create a Lcoal Queue and right clicking on it and selecting ‘Create JMS Queue’
Step 3: Specify a JMS Destination
Step 4: Deploy and Test the flow
JMS flow is great for integrating with Websphere Application Server where an application executes code and put the result on a JMS queue, the JMS picks the information up and processes by doing validation, transformation and mediation.
Important to note is that Websphere Message Broker only supports Websphere JMS and no other JMS provider.
How to catch Websphere Transformation Extender Error in Websphere Message Broker:
I have created a flow that will validate a message (WTX Validate) and also catch any error:
The Transformation Errors can be put on a Queue to be consumed by an Monitoring tool, Exported to a file for debugging.
The tutorial will show how to set-up Websphere Business Monitor to retrieve business information from Websphere Message Broker flows.
1. Open up Websphere Message Broker.
2: Create a flow, the flow looks like the following:
3. Click on any of the nodes to add a monitoring Event.
4. Click on the Add button to add another event:
Perquisite you must already have Websphere Business Monitor installed.
Generate the monitoring model application
Open up Websphere Integration Developer and Import the Monitoring zip file, the perspective will change to Websphere Business Monitoring.
Right click on the *.mm file and select Generate J2EE Project
Export the EAR file by right-clicking -> Export -> File System
Installing and configuring the monitoring model application
Open up Websphere Business Monitor Administration webpage and click on Applications -> New Applications and select New Enterprise Application
Navigate to the Path of the newly created EAR file.
Click on Finish and review the summary to make sure the EAR file has installed successfully.
Click on the Save configuration link.
From Application -> Application Type -> Websphere Enterprise Applications select your newly installed application and click start.
Confirm your application now contains a green arrow.
Create a WebSphere Business Monitor dashboard
Open up your Business Space webpage:
Create a new Space by clicking on the Green Start -> Create Space
Create a page by clicking on the + and entering a page name
Click on the ‘Edit Page’ link in the right hand corner to view all the widgets.
Add any of the KPI widgets by clicking on the + next to a widget to add it to the page.
When the widget has been added click on the menu in the right hand corner of the widget by select ‘Edit Settings’
Edit the widget to display the specific information from the list provided.
Install and configure Websphere Message-driven Bean (MDB)
1. Create a TCP listerner (Note if you already create a Queue Manager and a listener was created, you can use it)
2. Create a Server Connection Channel
3. Navigate to Program Files -> IBM -> Websphere MQ -> java -> bin
Run the following command.
runmqsc YOUR_QUEUE_MANAGER_NAME_HERE < MQJMS_PSQ.mqsc
Configure WebSphere MQ as the JMS Provider
Creating the connection factory:
1. From the Monitor Server administration console expand Resources > JMS > JMS Providers,
and select an appropriate scope from the list for your configuration.
2. Under Resources > JMS select Topic connection factories, click New.
3. Click WebSphere MQ messaging provider , click OK.
4. Enter the Name and JNDI name; for example, enter topicConn and jms/topicConn and click Next > Next >
5. Enter the queue manager name for your WebSphere Message Broker queue manager and click Next
6. Set Transport to Client and binding.
7. Enter the hostname where your Websphere Message Broker queue manager is running
8. In Port enter the port number of the TCP listener that you defined in the Websphere Message Broker queue manager.
10. In Channel enter the name of the Server Connection channel.
11. Click Next > Next > Finish
12. Click Save.
Now create a topic:
1. Click Resources > JMS select Topics, click New.
2. Click WebSphere MQ messaging provider, click OK.
3. Enter the Name and JNDI name; for example, enter topicName and jms/topicName.
4. In Base Topic Name enter the name of the monitoring topic name. If you use the default configuration, the topic name is
5. Click OK, click Save
Now install the MDB application
2. To switch to the Monitor Server administration console, click Applications > New Application and select New Enterprise Application.
3. Click Browse and select the WMBEventEmitterEAR.ear file that you extracted from the .zip file and then click Next.
4. Select Detailed – Show all installation options and parameters click Next
5. Click Continue
6. Click Next until you get to Bind listeners for message driven bean. Write down the name of the listener port.
8. Click Next on the remaining screens; on the final summary screen click Finish.
Save the definition.
Now create a listener for the MDB
1. Click Servers > Server Types > Websphere Application Servers , click your server.
2. Under the Communications section, go to Messaging > Message Listener Service > Listener Ports. Click New and enter the listener name that you wrote down when you installed the MDB application.
3. In the Connection factory JNDI name field, enter the JNDI name that you used when you created the topic connection factory; for example, jms/topicConn.
4. In the Destination JNDI name field, enter the JNDI name that you used when you created the topic; for example, jms/topicName.
5. Click OK, click Save.
6. Restart the server.
7. Click Servers > Application Servers, click your server. Under the Communications section, go to Messaging > Message Listener Service > Listener Ports and check that the listener port is running.
8. Under Applications > Enterprise Applications check that WMBEventEmitterEAR is running.
Verify that the event topic has a subscription registered against it for the message flow:
1. Open the WebSphere MQ Explorer and expand queue manager MB7QMGR under the Queue Managers folder.
2. To open the Subscriptions pane, double-click on Subscriptions.
3. Click the refresh button and check that a subscription with topic string
Enable monitoring in the deployed message flow
1. If you have not already deployed the message flow, deploy it now.
2. Issue the following command to enable monitoring for the deployed TotalPurchaseOrderFlow message flow:
mqsichangeflowmonitoring YOUR_BROKER_NAME -e YOUR_EXECUTION_GROUP –f YOUR_DEPLOYED_MB_FLOW_NAME -c active
Sending test messages by right clicking on your Broker flow and selecting ‘Test Flow’.
Verify that Websphere Business Monitor has received the update and it shows in your widgets.
This is some of the information you can see when the widgets are configured:
Install Websphere Message Broker V7 on AIX:
FTP all the relevant files to your AIX machine, this software includes:
1. Websphere MQ for AIX
2. Websphere Message Broker for AIX
Websphere MQ must first be installed before attempting to install WMB as WMB requires lib files from MQ.
Step 1: Open a command window and extract Websphere MQ, next run: sudo smitty
Step 2: Define the file path location of MQ for AIX: /installs/WebsphereMQ
Step 3: Define the “ALL” software needs to be installed and change the license agreement to “YES”
Step 4: Successful install of Websphere MQ
Install Webphere Message Broker:
Step 1: Open command line and navigate to the messagebroker1_runtime folder
Step 2: Run the following commnad: sudo ./setupaix -console
Step 3: Go through the Broker Wizard and confirm that Broker was installed successfully.
After installation navigate to: /opt/mqsi/7.0/bin
Run the following command: sudo ./ mqsicreatebroker WBRK_DEV -q WMQ_DEV
Confirm that broker has been created successfully.
Confirm that you MQ QueueManager listerner was created and started, if it was not started use the following command:
runmqlsr -t tcp -p 1414 -m WMQ_DEV
See link for more information:
Run the following command to start the broker: sudo ./mqsistart WBRK_DEV
Run the following command to see if broker and QM has started: sudo ./mqsilist
If all this has been done, add a remote broker definition to your Websphere Message Broker Toolkit and also a Remote Queue Manager to your Websphere MQ or Broker Explorer.