Gateway consists out of server components and (optional) backend components that are deployed as SAP NetWeaver Application Server ABAP (AS ABAP) add-ons that you install on top of your existing SAP Business Suite or application platform.
On the following picture we depict a high level architecture of SAP NetWeaver Gateway.
Explanation of the depicted building blocks/agents:
- Consumers: Any UI-centric client (groupware application, mobile application, Development Environment, Excel spreadsheet, ...) consuming OData protocol-compliant resources that are exposed by Gateway with additional SAP Annotations. This also subsumes cases where UI-centric clients access Gateway indirectly via additional infrastructure components such as Web or groupware servers.
- Gateway Core: The Gateway Core Technology components encompass several central components such as runtime components, the OData for SAP Library and the MetaData Infrastructure*.*
- Data Source Providers: Data provisioning implementations done on Gateway as a hub usually need to access business suite systems either via RFC or Web Service. The Content Provider Connectivity abstracts from such protocol specifics by means of a System Alias, which can be configured by the administrator to point to the desired RFC and/or Web Service destination.
- Tools: Gateway offers a SE80 based design time tool that allows for the generation of Gateway services following a top-down approach. Based on existing objects such as RFC function moduls, BOR objects or Dynpro Screens it is possible to generate Gateway services without the need to write a sinle line of code.
- AddOn for Backend Enablement and event Publishing (IW_BEP): This AddOn is needed for scenarios where business events from the backend are being pushed to the Gateway system, where they are translated into OData Protocol for SAP-compliant Notifications and forwarded to the respective consumer agents.
It is also needed for scenarios that are based on the OData Channel where the implementations is done"close" to the actual business data in the backend.