Friday, 5 December 2014

ODATA
Open Data Protocol (OData) is a Restful data access protocol initially defined by Microsoft. Versions 1.0, 2.0, and 3.0 are released under the Microsoft Open Specification Promise. Version 4.0 is being standardized at OASIS,[1] and was released in March 2014.[2]
The protocol enables the creation and consumption of REST APIs, which allow resources, identified using URLs and defined in a data model, to be published and edited by Web clients using simple HTTP messages. It shares some similarity with JDBC and ODBC but OData is not limited to relational databases.
OData is built on the AtomPub protocol and XML where the Atom structure is the envelope that contains the data returned from each OData request. An OData request uses the REST model for all requests. Each REST command is a POST, GET, PUT, PATCH, or DELETE HTTP request (mapping to CRUD) where the specifics of the command are in the URL.
·         GET: Get a collection of entities (as a feed document) or a single entity (as an entry document).
·         POST: Create a new entity from an entry document.
·         PUT: Update an existing entity with an entry document.
·         PATCH: Update an existing entity with a partial entry document.
·         DELETE: Remove an entity.

Any platform that provides support for HTTP and XML is enough to form HTTP requests to interact with AtomPub. The OData specification defines how AtomPub is used to standardize a typed, resource-oriented CRUD interface for manipulating data sources.

Implementing ODATA in IIB

Step 1 :- Create a New Integration Project--> with name ODATA1



Step 2:- Create a message flow with name :- ODATA_TEST


Step 3:- Design a flow as shown below:-


Step 4:- Configure the nodes as follows:-

        MQInput Node Configuration :-
  1. Message Domain : JSON



          HTTP REQUEST NODE Configuration:
  1. Path Suffix for URL  :- http://services.odata.org/Experimental/OData/OData.svc/Products(1)?$format=json
  2. Message Domain :- JSON
  3. HTTP Method :- GET

Step 5:- Now we need to Test this flow:-
          Input:- {"Product":"0"} 





No comments: