Business object processing

All processing of WebSphere business objects for the RFC Server module is initiated by an RFC-enabled function in an SAP application. In the RFC Server module, an RFC Server-specific business object handler supports only one RFC-enabled function; therefore, for each supported function in the SAP application, you must have an associated RFC Server-specific business object handler. In addition, you must have an associated business object for each RFC Server-specific business object handler.

Figure 28 illustrates business object processing for the RFC Server module.

Figure 28. Business object processing

Business object processing for the RFC Server module executes in the following manner:

  1. A listener thread picks up a subscribed event from the SAP Gateway and matches the name of the corresponding RFC-enabled function with an RFC Server-specific business object handler.
  2. The listener thread instantiates the appropriate RFC Server-specific business object handler based on data from the RFC event on the SAP Gateway, and then creates an instance of the corresponding business object.
  3. The RFC Server-specific business object handler retrieves the RFC interface data from the SAP Gateway and populates the WebSphere business object for SAP.
  4. The RFC Server-specific business object handler passes the business object to the integration broker.
  5. The business object handler receives the returned business object from the integration broker, converts it back to the RFC interface, and then returns it to the SAP Gateway.

The RFC Server module uses the SAP Gateway to maintain the processing order of events and to maintain the status of events. Since the listener threads make synchronous calls, an event must return to the SAP Gateway before it can be considered successfully processed.

Note:
If an RFC-enabled function module has a Return Structure or Return Table, the connector checks for the message types A (abort) and E (error) to determine if the event processed successfully. A message type A or E indicates that the event failed to process. If an RFC-enabled function module does not have a Return Structure or Return Table, you must implement your own error handling.

Copyright IBM Corp. 1997, 2004