Show TOC

Background documentationClass-Based RFC Exceptions Locate this document in the navigation structure

 

The class hierarchy of RFC-specific exception and error classes is constructed in the following way:

RFC Exception Class Hierarchy

This graphic is explained in the accompanying text.

  • Class CX_REMOTE_UNSPECIFIED_EXC is the super class for all exception classes that are used to replace the original exception. This is necessary when all original exception are unknown in the RFC Client or if the transport of the exception to the RFC Client failed.

  • Class CX_REMOTE_APPL_ERROR handles error situation that were caused during the call or when executing the function module at the server side. It essentially corresponds to the classic RFC exception SYSTEM_FAILURE.

    Note Note

    Some special cases of SYSTEM_FAILURE are assigned to the class CX_CONNECTIVITY_ERROR.

    End of the note.
  • Class CX_CONNECTIVITY_ERROR contains all exceptions that were returned during the connection creation, resource allocation, or in the communication layer during the function call. it corresponds to the classic exception COMMUNICATION_FAILURE, RESOURCE_FAILURE and some special cases of SYSTEM_FAILURE.

Attribute REMOTE_CONTEXT in class CX_ROOT transports additional information in the case of application errors to the target system (for example, the name of the affected application server or the ABAP destination).

Application-specific class-based exceptions are transported directly, that is, directly to the RFC Client without any additional wrapper by a class. This makes it easier for the RFC Client to access the exception and facilitates the context of the RFC call to persist when the exception was propagated outside the function call.

More Information

For more detailed information on using class-based exception in the field of RFC: