SlideShare a Scribd company logo
GW100 SAP NetWeaver Gateway
Introduction to REST
May, 2012




                              INTE
                                  RNA
                                     L
Objectives



                          At the end of this chapter, you will understand:
                          Ÿ  What Representational State Transfer (REST) is
                          Ÿ  How REST has been implemented as HTTP(S)




©  2012 SAP AG. All rights reserved.                                           2
Agenda

u    REST – The Foundational Principles of the World Wide Web
u    HTTP – An Implementation of the Principles of REST




 ©  2012 SAP AG. All rights reserved.                            3
Agenda

u    REST – The Foundational Principles of the World Wide Web
u    HTTP – An Implementation of the Principles of REST




 ©  2012 SAP AG. All rights reserved.                            4
Correcting A Common Misunderstanding


                                       So, Representational State Transfer
                                        (REST) is some kind of network
                                          protocol like HTTP or SOAP?



     NO! REST is a design philosophy that defines six
                  architectural constraints.
  These constraints govern the large-scale behaviour of
  the participants within in a networked software system.


Any software system that conforms to the constraints of REST, is said to be RESTful.
The World Wide Web is the most prominent example of a software system that fully
implements the principles of REST.

©  2012 SAP AG. All rights reserved.                                             5
REST: A Software Design Philosophy – 1/6

REST defines 6 architectural constraints:
Communication between participants must:
1)  Implement the Client-Server model




The client-server model allows for the client and server software components to be
developed independently.
It further assumes that the client will take no part in long-term data storage and that
the server will take no part in the presentation of the data it supplies.
This principle is known as the “Separation of Concerns”.

©  2012 SAP AG. All rights reserved.                                                  6
REST: A Software Design Philosophy – 2/6

REST defines 6 architectural constraints:
Communication between participants must:
2)  Be layered




When the client communicates with a server, it should not ordinarily be able to
distinguish whether it has communicated with the actual end-point server that will
supply the requested information, or some intermediate server used for system
scalability or security.
©  2012 SAP AG. All rights reserved.                                                 7
REST: A Software Design Philosophy – 3/6

REST defines 6 architectural constraints:
Communication between participants must:
3)  Be stateless




A stateless interface requires the client to supply all the necessary information for
the server to process the request.
Session information must be held on the client.
There is no prohibition against the server holding client state information, only that
the state information must be known to, and addressable by the client.
©  2012 SAP AG. All rights reserved.                                                     8
REST: A Software Design Philosophy – 4/6

REST defines 6 architectural constraints:
Communication between participants must:
4)  Be Uniform (meaning that)
      a.  The server must provide the client with a representation of its resources
      b.  A means must be provided for the client to manipulate those resources (E.G. Provide
          operations such as Create, Read, Update, Delete etc)
      c.  All responses sent to the client must be self-describing
      d.  The manipulation of server-side resources may only be performed by hypermedia
          supplied by the server.*

         This constraint is generally regarded as the core concept of REST.
              A server exposes a self-describing resource that can
                be manipulated by a client via a hypermedia link.


* Known as “Hypermedia as the Engine of Application State” or HATEOAS. Remember this principle
because it is key to the success of OData!
©  2012 SAP AG. All rights reserved.                                                             9
REST: A Software Design Philosophy – 5/6

REST defines 6 architectural constraints:
5)  Server responses must define whether or not they are Cacheable




                                       Response
                                        caching




In order to improve performance and scalability, any information supplied by the
server must carry with it an indicator to denote whether or not it can be cached for
future use.
Any system within the layered architecture could act as a cache.
©  2012 SAP AG. All rights reserved.                                                   10
REST: A Software Design Philosophy – 6/6

REST defines 6 architectural constraints:
6)  The Server should be able to deliver Code-On-Demand to the client




At the request of the client, the server should be able to supply additional
executable code to extend the client’s capabilities.
This principle is used every time a browser requests a JavaScript file from a
webserver.
©  2012 SAP AG. All rights reserved.                                            11
Agenda

u    REST – The Foundational Principles of the World Wide Web
u    HTTP – An Implementation of the Principles of REST




 ©  2012 SAP AG. All rights reserved.                            12
HTTP(S) – An Implementation of the REST Constraints


HTTP(S) is the Protocol that Drives the World Wide Web
A server-side resource can be manipulated in 4 basic ways.
These four basic REST operations have given rise the the acronym CRUD.



                                REST Operation                   HTTP Method
                                Create a resource                POST
                                Retrieve one or more resources   GET
                                Update a resource                PUT
                                Delete a resource                DELETE


HTTP(S) implements server-side resource manipulation by providing a set of
“Methods” that correspond to REST operations.


©  2012 SAP AG. All rights reserved.                                           13
Summary

u    REST is a set of 6 design constraints, not a network protocol.
u    The REST design constraints are fully implemented by the HTTP
      protocol.
u    The World Wide Web is an example of a fully RESTful software system.
u    Just because an application protocol makes use of HTTP, does not
      guarantee it to be RESTful!




©  2012 SAP AG. All rights reserved.                                     14
© 2012 SAP AG. All rights reserved


No part of this publication may be reproduced or transmitted in any form or for any purpose   Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal
without the express permission of SAP AG. The information contained herein may be             Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services
changed without prior notice.                                                                 mentioned herein as well as their respective logos are trademarks or registered trademarks
                                                                                              of Business Objects Software Ltd. Business Objects is an SAP company.
Some software products marketed by SAP AG and its distributors contain proprietary
software components of other software vendors.                                                Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybase
Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of Microsoft     products and services mentioned herein as well as their respective logos are trademarks or
                                                                                              registered trademarks of Sybase, Inc. Sybase is an SAP company.
Corporation.
                                                                                              All other product and service names mentioned are the trademarks of their respective
IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x,
                                                                                              companies. Data contained in this document serves informational purposes only. National
System z, System z10, System z9, z10, z9, iSeries, pSeries, xSeries, zSeries, eServer, z/
                                                                                              product specifications may vary.
VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server,
PowerVM, Power Architecture, POWER6+, POWER6, POWER5+, POWER5, POWER,                         The information in this document is proprietary to SAP. No part of this document may be
OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS, HACMP,                     reproduced, copied, or transmitted in any form or for any purpose without the express prior
RETAIN, DB2 Connect, RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent        written permission of SAP AG.
Miner, WebSphere, Netfinity, Tivoli and Informix are trademarks or registered trademarks of   This document is a preliminary version and not subject to your license agreement or any
IBM Corporation.                                                                              other agreement with SAP. This document contains only intended strategies, developments,
Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.          and functionalities of the SAP® product and is not intended to be binding upon SAP to any
Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered    particular course of business, product strategy, and/or development. Please note that this
                                                                                              document is subject to change and may be changed by SAP at any time without notice.
trademarks of Adobe Systems Incorporated in the United States and/or other countries.
                                                                                              SAP assumes no responsibility for errors or omissions in this document. SAP does not
Oracle is a registered trademark of Oracle Corporation.
                                                                                              warrant the accuracy or completeness of the information, text, graphics, links, or other items
UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.                   contained within this material. This document is provided without a warranty of any kind,
Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are          either express or implied, including but not limited to the implied warranties of
trademarks or registered trademarks of Citrix Systems, Inc.                                   merchantability, fitness for a particular purpose, or non-infringement.
HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World               SAP shall have no liability for damages of any kind including without limitation direct, special,
Wide Web Consortium, Massachusetts Institute of Technology.                                   indirect, or consequential damages that may result from the use of these materials. This
                                                                                              limitation shall not apply in cases of intent or gross negligence.
Java is a registered trademark of Sun Microsystems, Inc.
                                                                                              The statutory liability for personal injury and defective products is not affected. SAP has no
JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for        control over the information that you may access through the use of hot links contained in
technology invented and implemented by Netscape.                                              these materials and does not endorse your use of third-party Web pages nor provide any
SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer,           warranty whatsoever relating to third-party Web pages.
StreamWork, and other SAP products and services mentioned herein as well as their
respective logos are trademarks or registered trademarks of SAP AG in Germany and other
countries.




 ©  2012 SAP AG. All rights reserved.                                                                                                                                                     15

More Related Content

PDF
NetWeaver Gateway- Gateway Service Consumption
PDF
SAP NetWeaver Gateway - Gateway Service Consumption
PDF
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
PDF
NetWeaver Gateway- Extend the Reach of SAP Applications
PDF
SAP NetWeaver Gateway - RFC & BOR Generators
PPTX
Introduction to SAP Gateway and OData
PDF
NetWeaver Gateway- Introduction to OData
PDF
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
NetWeaver Gateway- Gateway Service Consumption
SAP NetWeaver Gateway - Gateway Service Consumption
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
NetWeaver Gateway- Extend the Reach of SAP Applications
SAP NetWeaver Gateway - RFC & BOR Generators
Introduction to SAP Gateway and OData
NetWeaver Gateway- Introduction to OData
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2

What's hot (20)

PDF
NetWeaver Gateway- Service Builder
PDF
SAP NetWeaver Gateway - Introduction
PDF
Sap netweaver gateway_2.0_sap_net_weaver
PPTX
OData and the future of business objects universes
PDF
SAP Integration with Red Hat JBoss Technologies
PDF
PaaSing a Java EE 6 Application at Geecon 2012
PPTX
The Java EE 7 Platform: Developing for the Cloud
PPTX
JAX-RS 2.0: RESTful Web services on steroids
PPTX
OData Fundamental
PDF
Java EE 7 and HTML5: Developing for the Cloud
PDF
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012
PDF
Java EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
PDF
Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012
PDF
SAP HANA SPS09 - XS Programming Model
PDF
GlassFish REST Administration Backend at JavaOne India 2012
PPTX
OData - The Universal REST API
PDF
Websocket 1.0
PDF
Oracle APEX勉強会 - 認証と認可の実装を学ぶ
PDF
JAX-RS 2.0: What’s New in JSR 339 ?
PPTX
Sap java connector / Hybris RFC
NetWeaver Gateway- Service Builder
SAP NetWeaver Gateway - Introduction
Sap netweaver gateway_2.0_sap_net_weaver
OData and the future of business objects universes
SAP Integration with Red Hat JBoss Technologies
PaaSing a Java EE 6 Application at Geecon 2012
The Java EE 7 Platform: Developing for the Cloud
JAX-RS 2.0: RESTful Web services on steroids
OData Fundamental
Java EE 7 and HTML5: Developing for the Cloud
JAX-RS 2.0: RESTful Web services on steroids at Geecon 2012
Java EE 7: Developing for the Cloud at Geecon, JEEConf, Johannesburg
Java EE 7: Developing for the Cloud at Java Day, Istanbul, May 2012
SAP HANA SPS09 - XS Programming Model
GlassFish REST Administration Backend at JavaOne India 2012
OData - The Universal REST API
Websocket 1.0
Oracle APEX勉強会 - 認証と認可の実装を学ぶ
JAX-RS 2.0: What’s New in JSR 339 ?
Sap java connector / Hybris RFC
Ad

Similar to NetWeaver Gateway- Introduction to REST (20)

PPTX
Introduction to OData and SAP NetWeaver Gateway.pptx
PDF
SAP HANA Cloud – Virtual Bootcamp: How to use the HANA Persistence Se…
DOCX
PDF
Adobe Flex Development and Backend Integration With BlazeDS
PDF
Modern Application Development for the Enterprise
PPTX
Trafodion – an enterprise class sql based on hadoop
PPTX
SAP HANA Native Application Development
PDF
SAP Net Weaver Architecture,
PDF
REST - What's It All About? (SAP TechEd 2012, CD110)
PDF
Java EE, What's Next? by Anil Gaur
PDF
Document_format_for_OData_In_A_Nutshell.pdf
PPTX
Building the perfect share point farm
PPT
Sap commitment to_open_data_acces_strategy_for_bi_sept_2013
PPTX
W8/WP8 App Dev for SAP, Part 1B: Service Generation with NetWeaver Gateway Fr...
PDF
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
PPT
Global Logic sMash Overview And Experiences
PPTX
Effective load testing_&_monitoring
PDF
Big SQL: Powerful SQL Optimization - Re-Imagined for open source
PPTX
Преимущества бесшовной интеграции документов с бизнес-процессами в SAP ERP
PDF
Big SQL NYC Event December by Virender
Introduction to OData and SAP NetWeaver Gateway.pptx
SAP HANA Cloud – Virtual Bootcamp: How to use the HANA Persistence Se…
Adobe Flex Development and Backend Integration With BlazeDS
Modern Application Development for the Enterprise
Trafodion – an enterprise class sql based on hadoop
SAP HANA Native Application Development
SAP Net Weaver Architecture,
REST - What's It All About? (SAP TechEd 2012, CD110)
Java EE, What's Next? by Anil Gaur
Document_format_for_OData_In_A_Nutshell.pdf
Building the perfect share point farm
Sap commitment to_open_data_acces_strategy_for_bi_sept_2013
W8/WP8 App Dev for SAP, Part 1B: Service Generation with NetWeaver Gateway Fr...
SAP NetWeaver Portal OnDevice - Consuming your SAP NetWeaver Portal On Mobile...
Global Logic sMash Overview And Experiences
Effective load testing_&_monitoring
Big SQL: Powerful SQL Optimization - Re-Imagined for open source
Преимущества бесшовной интеграции документов с бизнес-процессами в SAP ERP
Big SQL NYC Event December by Virender
Ad

More from SAP PartnerEdge program for Application Development (20)

PDF
SAP HANA Cloud Platform Expert Session - SAP HANA Cloud Platform Analytics
PDF
SUSE Technical Webinar – Get started with creating Lumira CVOM extensions -- ...
PDF
SUSE Technical Webinar – Get started with creating Design Studio extensions -...
PDF
SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE ...
PDF
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
PDF
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
PDF
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
PDF
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
PDF
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
PDF
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
PDF
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
PDF
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
PDF
Microsoft Technical Webinar: SAP Mobile Platform for Windows 8 and Windows Ph...
PDF
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
PDF
Autodesk Technical Webinar: SAP Business One
PDF
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
PDF
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
PDF
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
PDF
Autodesk Technical Webinar: SAP HANA in-memory database
SAP HANA Cloud Platform Expert Session - SAP HANA Cloud Platform Analytics
SUSE Technical Webinar – Get started with creating Lumira CVOM extensions -- ...
SUSE Technical Webinar – Get started with creating Design Studio extensions -...
SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE ...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
Microsoft Technical Webinar: SAP Mobile Platform for Windows 8 and Windows Ph...
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
Autodesk Technical Webinar: SAP Business One
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
Autodesk Technical Webinar: SAP HANA in-memory database

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
KodekX | Application Modernization Development
PDF
Approach and Philosophy of On baking technology
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Big Data Technologies - Introduction.pptx
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Modernizing your data center with Dell and AMD
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Encapsulation theory and applications.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
KodekX | Application Modernization Development
Approach and Philosophy of On baking technology
Machine learning based COVID-19 study performance prediction
Big Data Technologies - Introduction.pptx
Reach Out and Touch Someone: Haptics and Empathic Computing
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Modernizing your data center with Dell and AMD
Diabetes mellitus diagnosis method based random forest with bat algorithm
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Dropbox Q2 2025 Financial Results & Investor Presentation
Encapsulation_ Review paper, used for researhc scholars
MYSQL Presentation for SQL database connectivity
Encapsulation theory and applications.pdf

NetWeaver Gateway- Introduction to REST

  • 1. GW100 SAP NetWeaver Gateway Introduction to REST May, 2012 INTE RNA L
  • 2. Objectives At the end of this chapter, you will understand: Ÿ  What Representational State Transfer (REST) is Ÿ  How REST has been implemented as HTTP(S) ©  2012 SAP AG. All rights reserved. 2
  • 3. Agenda u  REST – The Foundational Principles of the World Wide Web u  HTTP – An Implementation of the Principles of REST ©  2012 SAP AG. All rights reserved. 3
  • 4. Agenda u  REST – The Foundational Principles of the World Wide Web u  HTTP – An Implementation of the Principles of REST ©  2012 SAP AG. All rights reserved. 4
  • 5. Correcting A Common Misunderstanding So, Representational State Transfer (REST) is some kind of network protocol like HTTP or SOAP? NO! REST is a design philosophy that defines six architectural constraints. These constraints govern the large-scale behaviour of the participants within in a networked software system. Any software system that conforms to the constraints of REST, is said to be RESTful. The World Wide Web is the most prominent example of a software system that fully implements the principles of REST. ©  2012 SAP AG. All rights reserved. 5
  • 6. REST: A Software Design Philosophy – 1/6 REST defines 6 architectural constraints: Communication between participants must: 1)  Implement the Client-Server model The client-server model allows for the client and server software components to be developed independently. It further assumes that the client will take no part in long-term data storage and that the server will take no part in the presentation of the data it supplies. This principle is known as the “Separation of Concerns”. ©  2012 SAP AG. All rights reserved. 6
  • 7. REST: A Software Design Philosophy – 2/6 REST defines 6 architectural constraints: Communication between participants must: 2)  Be layered When the client communicates with a server, it should not ordinarily be able to distinguish whether it has communicated with the actual end-point server that will supply the requested information, or some intermediate server used for system scalability or security. ©  2012 SAP AG. All rights reserved. 7
  • 8. REST: A Software Design Philosophy – 3/6 REST defines 6 architectural constraints: Communication between participants must: 3)  Be stateless A stateless interface requires the client to supply all the necessary information for the server to process the request. Session information must be held on the client. There is no prohibition against the server holding client state information, only that the state information must be known to, and addressable by the client. ©  2012 SAP AG. All rights reserved. 8
  • 9. REST: A Software Design Philosophy – 4/6 REST defines 6 architectural constraints: Communication between participants must: 4)  Be Uniform (meaning that) a.  The server must provide the client with a representation of its resources b.  A means must be provided for the client to manipulate those resources (E.G. Provide operations such as Create, Read, Update, Delete etc) c.  All responses sent to the client must be self-describing d.  The manipulation of server-side resources may only be performed by hypermedia supplied by the server.* This constraint is generally regarded as the core concept of REST. A server exposes a self-describing resource that can be manipulated by a client via a hypermedia link. * Known as “Hypermedia as the Engine of Application State” or HATEOAS. Remember this principle because it is key to the success of OData! ©  2012 SAP AG. All rights reserved. 9
  • 10. REST: A Software Design Philosophy – 5/6 REST defines 6 architectural constraints: 5)  Server responses must define whether or not they are Cacheable Response caching In order to improve performance and scalability, any information supplied by the server must carry with it an indicator to denote whether or not it can be cached for future use. Any system within the layered architecture could act as a cache. ©  2012 SAP AG. All rights reserved. 10
  • 11. REST: A Software Design Philosophy – 6/6 REST defines 6 architectural constraints: 6)  The Server should be able to deliver Code-On-Demand to the client At the request of the client, the server should be able to supply additional executable code to extend the client’s capabilities. This principle is used every time a browser requests a JavaScript file from a webserver. ©  2012 SAP AG. All rights reserved. 11
  • 12. Agenda u  REST – The Foundational Principles of the World Wide Web u  HTTP – An Implementation of the Principles of REST ©  2012 SAP AG. All rights reserved. 12
  • 13. HTTP(S) – An Implementation of the REST Constraints HTTP(S) is the Protocol that Drives the World Wide Web A server-side resource can be manipulated in 4 basic ways. These four basic REST operations have given rise the the acronym CRUD. REST Operation HTTP Method Create a resource POST Retrieve one or more resources GET Update a resource PUT Delete a resource DELETE HTTP(S) implements server-side resource manipulation by providing a set of “Methods” that correspond to REST operations. ©  2012 SAP AG. All rights reserved. 13
  • 14. Summary u  REST is a set of 6 design constraints, not a network protocol. u  The REST design constraints are fully implemented by the HTTP protocol. u  The World Wide Web is an example of a fully RESTful software system. u  Just because an application protocol makes use of HTTP, does not guarantee it to be RESTful! ©  2012 SAP AG. All rights reserved. 14
  • 15. © 2012 SAP AG. All rights reserved No part of this publication may be reproduced or transmitted in any form or for any purpose Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal without the express permission of SAP AG. The information contained herein may be Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services changed without prior notice. mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects Software Ltd. Business Objects is an SAP company. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybase Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of Microsoft products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Sybase, Inc. Sybase is an SAP company. Corporation. All other product and service names mentioned are the trademarks of their respective IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, companies. Data contained in this document serves informational purposes only. National System z, System z10, System z9, z10, z9, iSeries, pSeries, xSeries, zSeries, eServer, z/ product specifications may vary. VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server, PowerVM, Power Architecture, POWER6+, POWER6, POWER5+, POWER5, POWER, The information in this document is proprietary to SAP. No part of this document may be OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS, HACMP, reproduced, copied, or transmitted in any form or for any purpose without the express prior RETAIN, DB2 Connect, RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent written permission of SAP AG. Miner, WebSphere, Netfinity, Tivoli and Informix are trademarks or registered trademarks of This document is a preliminary version and not subject to your license agreement or any IBM Corporation. other agreement with SAP. This document contains only intended strategies, developments, Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. and functionalities of the SAP® product and is not intended to be binding upon SAP to any Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice. trademarks of Adobe Systems Incorporated in the United States and/or other countries. SAP assumes no responsibility for errors or omissions in this document. SAP does not Oracle is a registered trademark of Oracle Corporation. warrant the accuracy or completeness of the information, text, graphics, links, or other items UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. contained within this material. This document is provided without a warranty of any kind, Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are either express or implied, including but not limited to the implied warranties of trademarks or registered trademarks of Citrix Systems, Inc. merchantability, fitness for a particular purpose, or non-infringement. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World SAP shall have no liability for damages of any kind including without limitation direct, special, Wide Web Consortium, Massachusetts Institute of Technology. indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence. Java is a registered trademark of Sun Microsystems, Inc. The statutory liability for personal injury and defective products is not affected. SAP has no JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for control over the information that you may access through the use of hot links contained in technology invented and implemented by Netscape. these materials and does not endorse your use of third-party Web pages nor provide any SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer, warranty whatsoever relating to third-party Web pages. StreamWork, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries. ©  2012 SAP AG. All rights reserved. 15