In the mortgage lending business scenario used throughout this series of articles, the implementation of the business process application has not yet been defined. WebSphere Business Monitor can monitor business process applications running in virtually any environment, as long as CBEs can be generated from their activity and transmitted to the monitor model.
If the business process applications are running in IBM WebSphere Application Server, IBM WebSphere Process Server, or IBM WebSphere Enterprise Service Bus, they can use a Common Event Infrastructure (CEI) event emitter factory to get the CBEs emitted to the monitor model. WebSphere Process Server applications are able to automatically emit CBEs if configured to do so in the IBM WebSphere Integration Developer tooling.
If the business process application is not running in a WebSphere Application Server environment, it might not be able to directly access CEI event emitter factories. In this article, learn how to enable business process applications in a WebSphere MQ environment (such as IBM WebSphere Message Broker) to get CBEs to WebSphere Business Monitor.
To follow the steps in this article, make sure:
- A business process application capable of creating XML-formatted CBEs and sending the XML as a text message to a WebSphere MQ queue manager has been created.
- WebSphere Business Monitor 6.1.1 or later is installed.
If was_root/scripts.wbm/CEIMQ/MQtoCEIMediation.ear is not available on your system, you need to upgrade the WebSphere Business Monitor installation to version 6.1.1 or later.
- A monitor model that can consume the CBEs generated by your business process application has been created and is installed on the WebSphere Business Monitor server.
Enable WebSphere Business Monitor server to receive events via WebSphere MQ
To prepare your WebSphere Business Monitor server to receive events via a WebSphere MQ queue manager:
- Install the MQtoCEIMediation.ear application. It must be installed onto the
same server (or cluster) where CEI is configured in the local monitor cell. If
you are not sure which server this is, use the administrative console:
- Select Service Integration -> Buses.
- Select the CommonEventInfrastructure_Bus.
- Click Bus Members.
There should be a single bus member. The name will include the node and server name (or cluster name) that the application must be installed on, as shown in Figure 1.
Figure 1. CEI bus member
To install the application from the administrative console on the WebSphere Business Monitor server:
- Select Applications > Install New Application.
- Click Browse and browse to was_root/scripts.wbm/CEIMQ/MQtoCEIMediation.ear.
- Click Next.
- On the Select installation options panel, click Next.
- On the Map modules to servers panel, make sure the server selected for the
AddCEIHeaderMediation module is the one hosting the
CommonEventInfrastructure_Bus bus member, as shown in Figure 2.
Figure 2. Map modules to servers on application install
- Click Next.
- Click Finish, then save the changes.
- From the was_root/scripts.wbm/CEIMQ folder of the WebSphere Business Monitor
6.1 server installation, choose one of the methods below to run the
configCEIForMQClients utility.
- To run the utility interactively, use:
- For AIX®, HPUX, or Linux®: configCEIForMQClients.sh
- For Windows®: configCEIForMQClients.bat
Figure 3 shows sample output from the configCEIForMQClients script.
Figure 3. Sample output from configCEIForMQClients script
- To run the utility using a properties file:
Review the contents of the configCEIForMQClients.props file, and change any necessary properties. The configCEIForMQClients file is an example properties file in the was_root/scripts.wbm/CEIMQ folder. You can create your own properties file for your configuration, as follows, using:
- For AIX, HPUX, or Linux: configCEIForMQClients.sh âprops properties_file_name
- For Windows: configCEIForMQClients.bat âprops properties_file_name
where properties_file_name represents the name of the properties file that contains the required values for the configuration.
Figure 4 shows the sample properties file for the configCEIForMQClients script.
Figure 4. Sample properties file for configCEIForMQClients script
The configCEIForMQClients utility configures an insecure WebSphere MQ link between WebSphere MQ and the CommonEventInfrastructure_Bus. It also creates a remote queue definition on the WebSphere MQ queue manager called CEIQueue, as shown in Figure 5, which can be used by WebSphere MQ applications to send messages to the CEI server.
Figure 5. Remote queue definition and transmission queue in WebSphere MQ Explorer
When running the utility, if the option to connect directly to the WebSphere MQ queue manager is not selected, an MQSC script will be generated. By default, this script is called createMQLink.mqsc. The script must be run against the target WebSphere MQ queue manager to complete the configuration.
To configure security, see how to Enable security on the WebSphere MQ link.
- To run the utility interactively, use:
- When the script is completed, restart the local WebSphere Business Monitor server.
- Verify that the WebSphere MQ link has started successfully, as follows.
- From the administrative console on the WebSphere Business Monitor server, select Service Integration -> Buses.
- Click CommonEventInfrastructure_Bus.
- Under Topology, click Messaging Engines. One messaging engine
should be defined.
The Status field displays a green arrow if the messaging engine is active.
- Click on the messaging engine, then click Additional Properties
-> WebSphere MQ links. One link should be defined, as shown in
Figure 6.
The Status field displays a green arrow if the link is active.
Figure 6. WebSphere MQ Link defined by configCEIForMQClients script
- WebSphere MQ applications can now send XML-formatted CBEs to WebSphere Business
Monitor by using the CEIQueue destination on the queue manager. The applications
do so using:
- WebSphere MQ JMS text messages
- WebSphere MQ messages with a format name of MQFMT_STRING
The configCEIForMQClients utility creates both sides of the WebSphere MQ link and the remote queue definition in queue manager. It also creates a queue on the CommonEventInfrastructure_Bus called CEIQueueAliasForMQ, which will redirect messages to the CEI serverâs queue (using a forward routing path). The redirection was necessary because the WebSphere MQ environment cannot address destinations with names longer than 48 characters. The name of the CEI serverâs queue is of the format nodeName.serverName.CommonEventInfrastructureQueueDestination, which is very likely to be more than 48 characters long. See figure 7 for an example.
Figure 7. CEIQueueAliasForMQ and the CommonEventInfrastructureQueueDestination

The CEIQueueAliasForMQ is mediated using a service integration bus (SIB) mediation, which adds certain properties to the inbound messages from WebSphere MQ to allow the CEI to process them.
Figure 8. MQ_TO_CEI_Mediation

Enable security on the WebSphere MQ link
When enabling security on the MQ Link, make sure you set the Inbound user ID on the foreign bus as a user ID that has authority to connect and send messages to the CommonEventInfrastructure_Bus. You can either configure a new user ID for the CommonEventInfrastructure_Bus or reuse the existing one.
To set the Inbound user ID:
- From the administrative console on the WebSphere Business Monitor server, click Service Integration -> Buses.
- Click the CommonEventInfrastructure_Bus.
- Under Topology, click Foreign buses.
Click on the foreign bus that represents your WebSphere MQ queue manager.
- Under Additional Properties, click WebSphere MQ link routing
properties.
Enter an appropriate Inbound user ID, as shown in Figure 9.
- Click OK or Apply, and save your changes.
Figure 9. Inbound user ID for WebSphere MQ link routing
You can find an existing userid that should have the appropriate authority by looking at the CommonEventInfrastructureJMSAuthAlias J2C Authentication Alias, as follows.
- From the administrative console on the WebSphere Business Monitor server, select Security -> Secure administration.
- Under Authentication, click Java Authentication and Authorization Service, then click J2C authentication data.
- Look at the User ID information for the Alias CommonEventInfrastructureJMSAuthAlias, as shown in Figure 10. This is a user ID that should have authority to connect and send messages to the CommonEventInfrastructure_Bus.
Figure 10. J2C Authentication Alias for the CEI

Problems with creating default AuthorizationToken
If WebSphere Application Server security is not enabled, the following exception may appear in the SystemOut log of the WebSphere Application Server when messages come into WebSphere Application Server from WebSphere MQ:
SECJ5011E: Could not create default AuthorizationToken during propagation login. The following exception occurred: java.lang.NullPointerException |
This is a benign exception and can be safely ignored. APAR PK57558, Could not create default AuthorizationToken, resolves this issue.
In this article, you learned how to configure a link between WebSphere MQ and WebSphere Business Monitor that will allow business process applications in the WebSphere MQ environment to send XML formatted CBEs to WebSphere Business Monitor. The business process application in the WebSphere MQ environment sends text messages containing the XML formatted CBE to the CEIQueue defined on the queue manager. These messages will be transmitted to the WebSphere Business Monitor server's CEI server, which will route the messages to the appropriate monitor model.
- Participate in the discussion forum.
- Check out the other parts of this series:
- Part 1, "What's new in WebSphere Business Monitor 6.1" (developerWorks, Dec 2007)
- Part 2, "WebSphere Business Monitor 6.1 installation improvements" (developerWorks, Jan 2008)
- Part 3, "Improved Unit Test Environment in IBM WebSphere Business Monitor Development Toolkit V6.1" (developerWorks, Feb 2008)
- Part 4, "Use the Integrated Test Client to improve iterative development with WebSphere Business Monitor V6.1" (developerWorks, Mar 2008)
- Part 5, "Managing failed and unrecoverable events In IBM WebSphere Business Monitor V6.1" (developerWorks, Apr 2008)
- Part 6, "Integrating high-level and low-level monitor models" (developerWorks, Apr 2008)
- Part 7, "Creating user-defined XPath functions for IBM WebSphere Business Monitor V6.1" (developerWorks, Apr 08)
- Browse the
technology bookstore
for books on these and other technical topics.
- Learn more about securing the WebSphere MQ Link
from the
WebSphere Application Server v6.1 Infocenter.
- Read
"IBM WebSphere Developer Technical Journal: Securing connections between WebSphere Application Server and WebSphere MQ -- Part 2: Secure the WebSphere MQ link using the service integration bus"
(developerWorks, Jan 2006).
- Visit WebSphere Application
Server v6.1 Infocenter to learn more about this edition.
Comments (Undergoing maintenance)


