About the CORBA nodes sample

The CORBA nodes sample consists of multiple process flows within one message flow. These process flows include:

The following overview diagram shows the relationships between the message flow on IBM Integration Bus, the naming service, and the CORBA server Java application.

Diagram showing the relationship between IBM Integration Bus, naming service and COBRA server.

  1. The stock control management system is hosted as a CORBA server Java application. The server application creates the CORBA object, binds this object to a reference and puts this object reference into the naming service.
  2. At deployment time, the CORBARequest node contacts the naming service to get an object reference. The naming service is the mechanism that CORBA server applications use to put their object references. The naming service is started on a specific host name and port number.
  3. The StockWarehouseClient message flow drives the requests to the CORBA server Java application by using the object reference and invoking the specific operation on the object in the CORBA server.

Routing the initial message request

This process flow consists of the following nodes:

Flow diagram for the intial message request process

The integration node receives a message request from a WebSphere MQ queue.

The Compute node:

  1. Sets up routing of the message by specifying the correct label name to which to route in the local environment.
  2. Copies the message to the local environment.

Creating a new stock item process

This process flow consists of the following nodes:

Flow diagram for the new stock items process

The Label node receives the routed message request. The CORBARequest node invokes the createNewStockItem operation of the CORBA server application that is passing the input parameters, and returns a response.

A Compute node copies the response data to the local environment and sets up the input parameters for the next CORBA request. The next CORBARequest node invokes the setPrice operation of the CORBA server application that is passing the input parameters, and returns a response.

A final Compute node copies the response data to the local environment, then copies all the accumulated responses from the CORBARequest nodes to the message body to be propagated to a WebSphere MQ queue.

Any user-defined exceptions that are thrown from the CORBA server Java application are propagated down the Error terminal of the CORBARequest node to another WebSphere MQ queue.

Increasing stock quantity process

This process flow consists of the following nodes:

Flow diagram for the increasing stock quantity process

The Label node receives the routed message request. The CORBARequest node invokes the addStock operation of the CORBA server application that is passing the input parameters, and returns a response that is propagated to a WebSphere MQ queue.

Any user-defined exceptions that are thrown from the CORBA server Java application are propagated down the Error terminal of the CORBARequest node to another WebSphere MQ queue.

Getting stock item details process

This process flow consists of the following nodes:

Flow diagram for the getting stock item details process

The Label node receives the routed message request. The CORBARequest node invokes the getSKU operation of the CORBA server application that is passing the input parameters, and returns a response.

A Compute node copies the response data to the local environment and sets up the input parameters for the next CORBA request. The next CORBARequest node invokes the getPrice operation of the CORBA server application that is passing the input parameters, and returns a response.

Another Compute node copies the response data to the local environment and sets up the input parameters for the next CORBA request. The next CORBARequest node invokes the getStockLevel operation of the CORBA server application that is passing the input parameters, and returns a response.

A final Compute node copies the response data to the local environment, then copies all the accumulated responses from the CORBARequest nodes to the message body to be propagated to a WebSphere MQ queue.

Any user-defined exceptions that are thrown from the CORBA server Java application are propagated down the Error terminal of the CORBARequest node to another WebSphere MQ queue.

Reducing stock quantity process

This process flow consists of the following nodes:

Flow diagram for the reducing stock quantity process

The Label node receives the routed message request. The CORBARequest node invokes the reduceStock operation of the CORBA server application that is passing the input parameters, and returns a response that is propagated to a WebSphere MQ queue.

Any user-defined exceptions that are thrown from the CORBA server Java application are propagated down the Error terminal of the CORBARequest node to another WebSphere MQ queue.

Deleting a stock item process

This process flow consists of the following nodes:

Flow diagram for the deleting a stock item process

The Label node receives the routed message request. The CORBARequest node invokes the deleteStockItem operation of the CORBA server application that is passing the input parameters, and returns a response that is propagated to a WebSphere MQ queue.

Any user-defined exceptions that are thrown from the CORBA server Java application are propagated down the Error terminal of the CORBARequest node to another WebSphere MQ queue.

Back to sample home