Quantcast
Channel: SCN : All Content - SAP Gateway
Viewing all articles
Browse latest Browse all 2823

How to consume an OData service using OData Services Consumption and Integration (OSCI)

$
0
0

Updates

 

  • 26.11.2014
    • added SAP Note 2038379 as a prerequisite
    • added link to constraints

 

Constraints

 

Please be aware of the constraings listed in SAP Help.

 

OData Services Consumption and Integration - SAP NetWeaver Gateway Foundation (SAP_GWFND) - SAP Library

 

Overview

 

In this How-To Guide we want to describe how to consume the Odata sample service from  http://services.odata.org/ that supports read write access.

 

 

Since SAP NetWeaver Gateway does not support V3 of OData we will use the V2 version of this service. The service document of the V2 version is accessible via this link

 

http://services.odata.org/V2/(S(xuh52ptttgitgrkbtjzk1o31))/OData/OData.svc/

 

Prerequisites:

 

  • This scenario has to be implemented on a Gateway Server where also the AddOn IW_BEP is deployed or on a Gateway Server running on SAP NetWeaver 7.40.
    The reason is that the Odata Lib that is part of the hub components is needed for consumption of the 3rd party OData service. This prerequisite is automatically fulfilled by a SAP Netweaver 7.40 SP2 and higher system since the software component SAP_GWFND contains the functionalities of IW_FND, GW_CORE and IW_BEP.
  • This scenario needs to run on SAP NetWeaver Gateway 2.0 SP6 or higher or SAP NetWeaver 7.40 SP2 or higher
  • You have to apply SAP Note 2038379

 

 

Let's start with the configuration on SAP NetWeaver Gateway:

 

Step 1: Create an RFC destination

 

We first have to create a RFC destination of type G with the following technical settings:

 

Target Host: services.odata.org

 

In our example this RFC destination is called ODATAORG.

 

Please note that you might have to configure a proxy server.

 

01_RFC_Destination.PNG

 

Step 2: Create a System Alias

 

Now we have to create a System Alias that will be using the above created RFC destination. We call this System Alias OCI_NORTH and configure it such that the flags "Local GW" and "For Local App" are activated.

 

02_System_Alias.PNG

 

Step 3: Generate OData Service in SAP NetWeaver Gateway

 

On a SP6 system you have to run transaction /IWBEP/OCI_SRV_GEN.

 

Service Namespace = V2/(S(xuh52ptttgitgrkbtjzk1o31))/OData/

Service Name = OData.svc

 

and acitvate the check box "Configure Gateway Model and Service".

 

Choose appropriate names for MPC, DPC, Model and Service and a package (here $TMP)

03_IWFND_OCI_SRV_GEN.PNG

 

 

This registers the service in the backend (which is identical with the hub system).

 

Step 5: Activate Service using /IWFND/MAINT_SERVICE

 

We register the service in the hub and choose the Technical Service Name ZOSCI_RW_TEST_SRV and register it for the System Alias OCI_NORTH.

 

 

04_IWFND_MAINT_SERVICE.PNG

 

Step 6: Test the service

 

We can now test the service using the Gateway Client /IWFND/GW_CLIENT. You can simply press the push button GATEWAY CLIENT in the Activate and Maintain Service transcation.

 

We enter the following URI in the Gateway Client

 

/sap/opu/odata/sap/ZOSCI_RW_TEST_SRV/Products(0)

 

and then press the push button "Use as request".

 

05_GW_CLIENT_USE_AS_REQUEST.png

 

Now change the URI to

 

/sap/opu/odata/sap/ZOSCI_RW_TEST_SRV/Products

 

and the HTTP method to

 

POST

 

and change the values for

 

ID from "0" to "1000"

Name from "Bread" to "Toast"

 

and press Execute.

 

06_Entry_created.PNG

 

 

The HTTP status code 201 indicates that a new entry has been created in the collection "Products" and the created entry is shown in the HTTP response window.

 

You can now verify it also in a new browser window:

 

http://services.odata.org/V2/(S(xuh52ptttgitgrkbtjzk1o31))/OData/OData.svc/Products(1000)

 

07_Result_in_browser.PNG


Viewing all articles
Browse latest Browse all 2823

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>