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:
- 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.
- 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.
- The RFC Server-specific business object handler retrieves the
RFC interface data from the SAP Gateway and populates the WebSphere
business object for SAP.
- The RFC Server-specific business object handler passes the
business object to the integration broker.
- 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.
