Architecture of the connector running as a server

In addition to processing requests as a client, the connector can act as a server that receives requests from external CORBA clients. These requests invoke collaborations on the integration broker, which, for example, can update data in an external application.

This section describes the architecture of the connector when it runs as a server. For details about the connector running as a client, see Architecture of the connector running as a client.

Request flow

Figure 3 illustrates the request flow when the connector runs as a server. In this scenario, the connector executes a collaboration on behalf of a CORBA client.

Figure 3. Request process when the connector acts as a server


  1. When you first start the connector, all business objects that have been configured as server-side objects are registered by the connector with the ORB. For details about configuring a business object as a server, see Understanding business objects.
  2. The CORBA client application sends a method call request through the connector against a registered server object.
  3. The connector converts the method call to the verb that has been specified in the attribute ASI of the registered CORBA server object. For details about the attribute ASI of a business object, see Attribute-level ASI.
  4. The connector invokes the excecuteCollaboration() method of the adapter's Agent class. Based on the connector's BO_COLLAB_MAPPING property, which associates a business object verb (Step 3) to a particular collaboration, executeCollaboration() calls the appropriate collaboration (business process). For details about the BO_COLLAB_MAPPING property, see Configuring the connector.
  5. The integration broker sends data from the collaboration or business process that was executed to the connector for the external application (that is, the application with which the collaboration is exchanging data; in Figure 3, the example of this external application is Clarify).
  6. The connector of the external application sends the data to that application.
  7. The application returns a message to the connector of the external application (for example, Clarify, as shown in Figure 3).
  8. The connector of the external application forwards the message to the integration broker.
  9. The integration broker forwards the message to the connector acting as a CORBA server (the connector that invoked the excecuteCollaboration() method in Step 4).
  10. An exception, if it has occurred, is sent to the CORBA client application that initiated the original request (Step 2).

How the connector works running as a server

When running as a server, the connector performs business object processing in a different manner than when running as a client. This section describes how the different parts of the connector, running as a server, process business objects, as illustrated in Figure 4.

Figure 4. The connector for CORBA running as a server


  1. When you start the connector, its Agent class performs the following initialization processes:
  2. The Agent class sets up the factory, the instance of the factory proxy object, or the connection objects, depending on how the connector properties have been set. For details about connector properties, see Connector-specific properties.
  3. The external CORBA client sends to the CORBA server business object in the connector a request to invoke a collaboration. The request, sent via the ORB, is in the form of input arguments of a method.
  4. As described in step 3 and step 4:
  5. The data resulting from collaboration processing is then passed back to the CORBA client application via the ORB.

Copyright IBM Corp. 1997, 2004