MTAT Enterprise System Integration
|
|
- Moris Evans
- 5 years ago
- Views:
Transcription
1 MTAT Enterprise System Integration Lecture 7: Hypermedia REST Luciano García-Bañuelos University of Tartu
2 Richardson s Maturity Level 2 Also known as CRUD services Mul5ple URIs, mul5ple HTTP verbs, and HTTP Status Codes HTTP verbs GET, POST, PUT, DELETE HTTP Status Codes 1xx - Metadata 2xx Everything s fine 3xx Redirec5on 4xx Client did something wrong 5xx Server did a bad thing HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 1
3 Hypermedia within our application? HATEOAS: Hypermedia as the engine of applica5on state Roy Fielding s view: The simultaneous presenta0on of informa0on and controls such that the informa0on becomes the affordance through which the user obtains choices and selects ac0ons. A simpler wording: Include links into the resource representa0on. Let the user (human or program) con0nue the execu0on by following one of those links. HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 2
4 Example: PO creation (BuildIt) POST /pos h[p://ren5t.com/rest BuildIt <purchaseorder>! <start> </start>! <end> </end>! <plant>! <name>excavator</name>! <plant>! </purchaseorder>! RentIt HTTP/1.1 Loca5on: 201 Created /pos/1253 HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 3
5 Example: RentIt s view GET /pos/1253 h[p://ren5t.com/rest HTTP/ Ok RentIt <purchaseorder>! <start> </start>! <end> </end>! <cost> </cost>! <plant>! <sku>exc1253ab98</sku>! <name>excavator</name>! <plant>! <links>! <link rel="accept" href="/pos/1253/accept" method="post"/>! <link rel="reject" href="/pos/1253/accept" method="delete"/>! </links>! </purchaseorder>! HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 4
6 Our example application PurchaseOrderRESTController createpo() acceptpo() rejectpo() resubmitpo() requestpoupdate() acceptpoupdate() rejectpoupdate() POUpdateReqResource enddate PurchaseOrderResource startdate: Date enddate: Date total: Double PlantResource name: String description: String price: Double Plant <<Enumeration>> POStatus PENDING_ACCEPTANCE OPEN PENDING_UPDATE_ACCEPTANCE CLOSED REJECTED <<Enumeration>> URStatus OPEN ACCEPTED REJECTED Customer PurchaseOrder startdate: Date enddate: Date total: Double status: POStatus name: String description: String price: Double updates POUpdateRequest enddate: Date status: URStatus HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 5
7 Our example application PurchaseOrderRESTController createpo() acceptpo() rejectpo() resubmitpo() requestpoupdate() acceptpoupdate() rejectpoupdate() POUpdateReqResource enddate PurchaseOrderResource startdate: Date enddate: Date total: Double PlantResource name: String description: String price: Double PurchaseOrderService createpo() acceptpo() rejectpo() resubmitpo() requestpoupdate() acceptpoupdate() rejectpoupdate() HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 6
8 Resource life cycle: Purchase order PurchaseOrderService createpo() acceptpo() rejectpo() resubmitpo() requestpoupdate() acceptpoupdate() rejectpoupdate() createpo rejectpo pending confirmation rejected updatepo acceptpo acceptpoupdate open closepo closed rejectpoupdate requestpoupdate pending update HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 7
9 Hypermedia API rejectpo rejected createpo pending confirmation acceptpo open Verb URI template Rela?on Current state New state Comments POST /pos createpo Pending confirma5on POST /pos/{po.id/accept acceptpo Pending confirma5on DELETE /pos/{po.id/accept rejectpo Pending confirma5on Open Rejected Submit par5al representa5on Use empty body HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 8
10 Full Purchase Order API Method URI template Rela?on Current state New state Comments POST /pos createpo Pending confirma5on POST /pos/{po.id/accept acceptpo Pending confirma5on DELETE /pos/{po.id/accept rejectpo Pending confirma5on Open Rejected UPDATE /pos/{po.id updatepo Rejected Pending confirma5on DELETE /pos/{po.id closepo Open Closed POST /pos/{po.id/updates requestpoupdate Open Pending update POST DELETE /pos/{po.id/updates/ {up.id/accept /pos/{po.id/updates/ {up.id/accept acceptpoupdate rejectpoupdate Pending update Pending update Open Open Submit par5al representa5on Use empty body Submit new full representa5on Submit new end date Use empty body HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 9
11 Annotated State model DELETE /pos/{po.id/accept rejectpo rejected POST /pos createpo pending confirmation UPDATE /pos/{po.id updatepo POST /pos/{po.id/updates/{up.id/accept acceptpoupdate open POST /pos/{po.id/accept acceptpo DELETE /pos/{po.id closepo closed DELETE /pos/{po.id/updates/{up.id/accept rejectpoupdate POST /pos/{po.id/updates requestpoupdate pending update HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 10
12 Annotated State model Events produced by BuildIt DELETE /pos/{po.id/accept rejectpo rejected POST /pos createpo pending confirmation UPDATE /pos/{po.id updatepo POST /pos/{po.id/updates/{up.id/accept acceptpoupdate open POST /pos/{po.id/accept acceptpo DELETE /pos/{po.id closepo closed DELETE /pos/{po.id/updates/{up.id/accept rejectpoupdate POST /pos/{po.id/updates requestpoupdate pending update HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 11
13 A look at the business logic layer REST LUCIANO GARCÍA- BAÑUELOS 12
14 Purchase Order: Service public class PurchaseOrderService PlantRepository plantrep; public void createpo(purchaseorder po) throws PlantUnavailableException { DateTime startdate = new DateTime(po.getStartDate()); DateTime enddate = new DateTime(po.getEndDate()); int days = Days.daysBetween(startDate, enddate).getdays(); String plname = po.getplant().getname(); List<Plant> plants = plantrep.findbynameandavailability(plname, startdate, enddate); if (plants.isempty()) throw new PlantUnavailableException("The requested plant is not available"); po.settotal(days * plants.get(0).getprice()); po.setplant(plants.get(0)); po.persist(); Package: ~.services HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 13
15 Implementing the Hypermedia API REST LUCIANO GARCÍA- BAÑUELOS 14
16 Changes on public class Plant { private String name; private String description; private Double price; Package: ~.models In this case, we will use the library spring- hateoas. However, the classes required and their implementa5on are quite similar to those in our previous version. Note that we will use JSON as the public class PlantResource extends ResourceSupport { private String name; private String description; private Double price; Package: ~.integra5on.dto Maven dependency Group id: org.springframework.hateoas Ar5fact id: spring- hateoas Version: RELEASE REST LUCIANO GARCÍA- BAÑUELOS 15
17 Resource assembler public class PlantResourceAssembler extends ResourceAssemblerSupport<Plant, PlantResource> { public PlantResourceAssembler() { super(plantrestcontroller.class, public PlantResource toresource(plant plant) { PlantResource resource; resource = createresourcewithid(plant.getid(), plant); resource.setname(plant.getname()); resource.setdescription(plant.getdescription()); resource.setprice(plant.getprice()); return resource; HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 16
18 REST service public class PurchaseOrderRESTController PurchaseOrderService = RequestMethod.POST, value = "") public ResponseEntity<PurchaseOrderResource> createpo(@requestbody PurchaseOrder po) throws PlantUnavailableException { po.setstatus(postatus.pending_confirmation); service.createpo(po); HttpHeaders headers = new HttpHeaders(); URI uri = linkto(purchaseorderrestcontroller.class).slash(po.getid()).touri(); headers.setlocation(uri); PurchaseOrderResource pors = assembler.toresource(po); ResponseEntity<PurchaseOrderResource> response; response = new ResponseEntity<>(poRs, headers, HttpStatus.CREATED); return response; HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 17
19 REST service public class PurchaseOrderRESTController = RequestMethod.GET, value = "{id") public ResponseEntity<PurchaseOrderResource> getpo(@pathvariable Long id) { PurchaseOrder po = PurchaseOrder.findPurchaseOrder(id); PurchaseOrderResourceAssembler assembler = new PurchaseOrderResourceAssembler(); PurchaseOrderResource resource = assembler.toresource(po); switch (po.getstatus()) { case PENDING_CONFIRMATION: Method _acceptpo = PurchaseOrderRESTController.class.getMethod("acceptPO", Long.class); String acceptlink = linkto(_acceptpo, po.getid()).touri().tostring(); resource.add(new ExtendedLink(acceptLink, "acceptpo", "POST")); Method _rejectpo = PurchaseOrderRESTController.class.getMethod("rejectPO", Long.class); String rejectlink = linkto(_rejectpo, po.getid()).touri().tostring(); resource.add(new ExtendedLink(rejectLink, "rejectpo", "DELETE")); break; default: break; ResponseEntity<PurchaseOrderResource> response; response = new ResponseEntity<>(resource, HttpStatus.OK); return response; HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 18
20 Exception handling HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 19
21 Example GET /pos/1253 h[p://ren5t.com/rest HTTP/ Ok <purchaseorder>...</purchaseorder>! HTTP/ Not found RentIt HTTP/ Unauthorized HTTP/ Internal Server Error HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 20
22 Exception handling & HTTP status codes 400 Bad Request The client has PUT or POST a resource representa5on that is in the right format, but contains invalid informa5on 401 Unauthorized Proper creden5als to operate on a resource were not provided Response WWW-Authenticate header contains the type of authen5ca5on the server expects Basic, digest, WSSE, etc. 403 Forbidden The client request is OK, but the server doesn t want to process it (e.g., Restricted by IP address) HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 21
23 Exception handling & HTTP status codes 404 Not Found The standard catch- all response 405 Method Not Allowed The resource does not support a given method. Use Allow header to list the verbs the resource understands (e.g., Allow: GET, POST, PUT) 409 Conflict Tried to change the state of the resource to something the server will not allow HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 22
24 Exception handling & HTTP status codes 406 Not Acceptable The server cannot reply with the representa5on requested by the client HTTP header Accept 415 Unsupported Media Type The server cannot consume the resource format used by the client HTTP header Content-type HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 23
25 Exception handling within our public class PurchaseOrderRESTController InvalidHirePeriodException.class) public ResponseEntity<String> handlebadrequest(exception ex) { return new ResponseEntity<>(ex.getMessage(), public ResponseEntity<String> handlenotfound(exception ex) { return new ResponseEntity<>(ex.getMessage(), HttpStatus.NOT_FOUND); HYPERMEDIA REST LUCIANO GARCÍA- BAÑUELOS 24
MTAT Enterprise System Integration
MTAT.03.229 Enterprise System Integration Lecture 6: Hypermedia REST Luciano García- Bañuelos University of Tartu Richardson s Maturity Level 2 Also known as CRUD services Multiple URIs, multiple HTTP
More informationOverview of last week
Overview of last week PODTO PlantDTO SalesController SalesService Application Web UI adapter PurchaseOrder OrdersRepository Domain model JPA adapter Plant PlantRepository DDD & DATA ACCESS LUCIANO GARCÍA-BAÑUELOS
More informationMTAT Enterprise System Integration
MTAT.03.229 Enterprise System Integration Lecture 3: Services and Presentation layer Luciano García-Bañuelos University of Tartu Hexagonal architecture Last week: Domain model Structural patterns: Entities,
More informationMTAT Enterprise System Integration
MTAT.03.229 Enterprise System Integration Lecture 4: Presentation Layer Luciano García-Bañuelos University of Tartu The picture Enterprise sozware Presenta(on Controller Applica4on logic Model Data access
More informationModel driven engineering of Hypermedia REST applications
UNIVERSITY OF TARTU Institute of Computer Science Software Engineering Curriculum Vishal Desai Model driven engineering of Hypermedia REST applications Master s Thesis (30 ECTS) Supervisor(s): Luciano
More informationMTAT Enterprise System Integration
MTAT.03.229 Enterprise System Integration Lecture 3: Services and Presentation layer Luciano García-Bañuelos University of Tartu Hexagonal architecture Last week: Domain model Structural patterns: Entities,
More informationMTAT Enterprise System Integration
MTAT.03.229 Enterprise System Integration Lecture 3: Data access Layer Luciano García-Bañuelos University of Tartu The picture Enterprise sosware Presenta@on Applica@on logic Data access layer Persistence
More informationINFO/CS 4302 Web Informa6on Systems
INFO/CS 4302 Web Informa6on Systems FT 2012 Week 7: RESTful Webservice APIs - Bernhard Haslhofer - 2 3 4 Source: hmp://www.blogperfume.com/new- 27- circular- social- media- icons- in- 3- sizes/ 5 Plan
More informationHTTP, REST Web Services
HTTP, REST Web Services Martin Ledvinka martin.ledvinka@fel.cvut.cz Winter Term 2018 Martin Ledvinka (martin.ledvinka@fel.cvut.cz) HTTP, REST Web Services Winter Term 2018 1 / 36 Contents 1 HTTP 2 RESTful
More informationThe picture. Security is a cri,cal concern to take into account during the development of enterprise so8ware
The picture Enterprise so8ware Presenta,on Presenta,on Integra,on layer Applica,on logic Applica,on logic Data access Data access Security is a cri,cal concern to take into account during the development
More informationREST AND AJAX. Introduction. Module 13
Module 13 REST AND AJAX Introduction > Until now we have been building quite a classic web application: we send a request to the server, the server processes the request, and we render the result and show
More informationJVA-563. Developing RESTful Services in Java
JVA-563. Developing RESTful Services in Java Version 2.0.1 This course shows experienced Java programmers how to build RESTful web services using the Java API for RESTful Web Services, or JAX-RS. We develop
More informationRESTFUL WEB SERVICES - INTERVIEW QUESTIONS
RESTFUL WEB SERVICES - INTERVIEW QUESTIONS http://www.tutorialspoint.com/restful/restful_interview_questions.htm Copyright tutorialspoint.com Dear readers, these RESTful Web services Interview Questions
More informationReviewing the API Documentation
About the Cisco APIC-EM API Documentation, page 1 Testing the Cisco APIC-EM APIs, page 6 About the Cisco APIC-EM API Documentation Cisco APIC-EM controller provides interactive, northbound Representational
More informationRESTful Services. Distributed Enabling Platform
RESTful Services 1 https://dev.twitter.com/docs/api 2 http://developer.linkedin.com/apis 3 http://docs.aws.amazon.com/amazons3/latest/api/apirest.html 4 Web Architectural Components 1. Identification:
More informationRESTful Web Services Part 1
RESTful Web Services Part 1 Luciano García Bañuelos Institute of Computer Science About me Luciano García-Bañuelos E-mail: luciano.garcia@ut.ee Office: J.Liivi 2-311 Senior Researcher Software Engineering
More informationHeader Status Codes Cheat Sheet
Header Status Codes Cheat Sheet Thanks for downloading our header status codes cheat sheet! Below you ll find all the header status codes and their meanings. They are organized by sections, starting with
More informationCreating RESTful web services with Spring Boot
Creating RESTful web services with Spring Boot The Spring framework Free and open source Inversion of Control Container (IoC) Modules DI / AOP Data /Security Web MVC/ REST So much more +++ What is Spring
More informationRESTful Web Services. 20-Jan Gordon Dickens Chariot Solutions
RESTful Web Services 20-Jan-2011 Gordon Dickens Chariot Solutions gdickens@chariotsolutions.com Instructor/Mentor at chariotsolutions.com/education Who Am I? Active Tweeter for Open Source Tech Topics
More informationJVA-117E. Developing RESTful Services with Spring
JVA-117E. Developing RESTful Services with Spring Version 4.1 This course enables the experienced Java developer to use the Spring MVC framework to create RESTful web services. We begin by developing fluency
More informationWeb Services Week 10
Web Services Week 10 Emrullah SONUÇ Department of Computer Engineering Karabuk University Fall 2017 1 Recap BPEL Process in Netbeans RESTful Web Services Introduction to Rest Api 2 Contents RESTful Web
More informationEMR web api documentation
Introduction EMR web api documentation This is the documentation of Medstreaming EMR Api. You will find all available Apis and the details of every api. Including its url, parameters, Description, Response
More informationSession 25. Spring Controller. Reading & Reference
Session 25 Spring Controller 1 Reading Reading & Reference www.tutorialspoint.com/spring/spring_web_mvc_framework.htm https://springframework.guru/spring-requestmapping-annotation/ Reference Spring home
More informationHeartbeat API. Document revision 1.0 Date of Issue: 04 October 2018 Date of revision: 04 October Nick Palmer.
Heartbeat API Document revision 1.0 Date of Issue: 04 October 2018 Date of revision: 04 October 2018 Nick Palmer Product Manager Page 1 of 7 Table of Contents 1. Purpose... 3 2. Glossary of Terms... 3
More informationIntroduc)on to Computer Networks
Introduc)on to Computer Networks COSC 4377 Lecture 3 Spring 2012 January 25, 2012 Announcements Four HW0 s)ll missing HW1 due this week Start working on HW2 and HW3 Re- assess if you found HW0/HW1 challenging
More informationSIP Compliance APPENDIX
APPENDIX E This appendix describes Cisco SIP proxy server (Cisco SPS) compliance with the Internet Engineering Task Force (IETF) definition of Session Initiation Protocol (SIP) as described in the following
More informationDeveloping RESTful Services Using JAX-RS
Developing RESTful Services Using JAX-RS Bibhas Bhattacharya CTO, Web Age Solutions Inc. April 2012. Many Flavors of Services Web Services come in all shapes and sizes XML-based services (SOAP, XML-RPC,
More informationCloudessa API Documentation Guide. Cloudessa, Inc East Bayshore Road, Suite 200 Palo Alto, CA, 94303
Cloudessa API Documentation Guide Cloudessa, Inc. 2225 East Bayshore Road, Suite 200 Palo Alto, CA, 94303 July, 2013 Cloudessa RADIUS API Cloudessa offers a powerful Application Program Interface (API)
More informationCaterpillar: A Blockchain-Based Business Process Management System
Caterpillar: A Blockchain-Based Business Process Management System Orlenys López-Pintado 1 and Luciano García-Bañuelos 1 and Marlon Dumas 1 and Ingo Weber 2 1 University of Tartu, Estonia Orlenys.Lopez.Pintado@tudeng.ut.ee,
More informationHow to... Use PO Convert
STEP 1 - Select My POs The My POs page gives you the ability to: 1) Manage Purchase Orders that have been delivered to Tungsten Network from your customer. Click My POs 2) Submit invoices/ credit notes:
More informationHTTP status codes. Setting status of an HTTPServletResponse
HTTP status codes Setting status of an HTTPServletResponse What are HTTP status codes? The HTTP protocol standard includes three digit status codes to be included in the header of an HTTP response. There
More informationTAXII 2.0 Specification Pre Draft
TAXII 2.0 Specification Pre Draft Current Status/Intent This document serves to gain consensus on pre draft concepts of TAXII 2.0. Please feel free to poke holes and comment! Overview TAXII is an open
More informationPS/2 Web Services
703128 PS/2 Web Services REST Services Monday, 2015-01-12 Copyright 2014 STI INNSBRUCK www.sti-innsbruck.at Outline REST Services Task: Java API for RESTful Web Services (JAX-RS) REST Web Services design
More informationPHPKB API Reference Guide
PHPKB API Reference Guide KB Administrator Fri, Apr 9, 09 User Manual 96 0 This document provides details on how to use the API available in PHPKB knowledge base management software. It acts as a reference
More informationVariable Usage, Making HTTP requests, Excep:ons
Variable Usage, Making HTTP requests, Excep:ons 1 How hard was second code review assignment? A) Easy B) Moderate C) Challenging D) Unreasonable 2 How long did second assignment take? A) Less than 2 hours
More informationTRAINING GUIDE. Lucity Web Services APIs
TRAINING GUIDE Lucity Web Services APIs Lucity Web Services APIs Lucity offers several web service APIs. This guide covers the Lucity Citizen Portal API as well as the. Contents How it Works... 2 Basics...
More informationREST API s in a CA Plex context. API Design and Integration into CA Plex landscape
REST API s in a CA Plex context API Design and Integration into CA Plex landscape Speaker Software Architect and Consultant at CM First AG, Switzerland since 2008 having 30+ years of experience with the
More informationWeb API Best Practices
Web API Best Practices STEVE SMITH ARDALIS.COM @ARDALIS STEVE@DEVIQ.COM DEVIQ.COM Learn More After Today 1) DevIQ ASP.NET Core Quick Start http://aspnetcorequickstart.com DEVINTFALL17 20% OFF! 2) Microsoft
More informationPartner Web Services. GetOrderStatus Version 1 Service Manual
Partner Web Services GetOrderStatus Version 1 Service Manual Contents 1 Introduction... 4 1.1 Overview... 4 1.2 Supporting Resources... 4 2 Service Overview... 4 3 Service Endpoints... 5 4 Request/Response
More informationAPI Specification Doc
API Specification Doc (SMS System Gateway) Version Date Description 1.0 01-Nov-2017 Initial draft 1.1 18-Feb-2018 Updated to include Delivery report call back options 1.2 10-Apr-2018 Appended API to include
More informationIntroduction. Copyright 2018, Itesco AB.
icatch3 API Specification Introduction Quick Start Logging in, getting your templates list, logging out Doing Quick Search Creating a Private Prospects Setting template Posting Private Prospects query,
More informationPAYMENTADMIN API 1.1 SveaWebPay
PAYMENTADMIN API 1.1 SveaWebPay 2 (22) PaymentAdmin API 1.1 Content Revisions... 4 Overview... 5 Testing... 5 Production... 5 Authentication... 6 Get order... 7 Get task... 8 Deliver order... 9 Cancel
More informationOther architectures are externally built or expanded
RESTful interfaces http://rest.elkstein.org/ (but not Section 11) http://net.tutsplus.com/tutorials/other/a-beginners-introduction-to-http-and-rest/ and for a laugh (or cry) : http://www.looah.com/source/view/2284
More informationDDD & REST. Domain-Driven APIs for the web. Oliver Gierke. / olivergierke
DDD & REST Domain-Driven APIs for the web Oliver Gierke / olivergierke 2 Background 3 Spring Data REST Spring Data Spring HATEOAS Repositories & Aggregates Hypermedia for Spring MVC 4 REST CRUD via HTTP
More informationPUSH services. Document revision 1.0 Date of Issue: 04 October 2018 Date of revision: 04 October Nick Palmer.
PUSH services Document revision 1.0 Date of Issue: 04 October 2018 Date of revision: 04 October 2018 Nick Palmer Product Manager Page 1 of 8 Table of Contents 1. Purpose... 3 2. Glossary of Terms... 3
More informationRemedial Java - Excep0ons 3/09/17. (remedial) Java. Jars. Anastasia Bezerianos 1
(remedial) Java anastasia.bezerianos@lri.fr Jars Anastasia Bezerianos 1 Disk organiza0on of Packages! Packages are just directories! For example! class3.inheritancerpg is located in! \remedialjava\src\class3\inheritencerpg!
More informationVariable Usage, Making HTTP requests, Exceptions. Slides adapted from Craig Zilles
Variable Usage, Making HTTP requests, Exceptions Slides adapted from Craig Zilles 1 Client / Server Architecture Server maintains durable state Clients connect to server to access/modify state Server supports
More informationCreating SDK plugins
Creating SDK plugins 1. Introduction... 3 2. Architecture... 4 3. SDK plugins... 5 4. Creating plugins from a template in Visual Studio... 6 5. Creating custom action... 9 6. Example of custom action...10
More informationREST. And now for something completely different. Mike amundsen.com
REST And now for something completely different Mike Amundsen @mamund amundsen.com Preliminaries Mike Amundsen Developer, Architect, Presenter Hypermedia Junkie I program the Internet Designing Hypermedia
More informationJSR 311: JAX-RS: The Java API for RESTful Web Services
JSR 311: JAX-RS: The Java API for RESTful Web Services Marc Hadley, Paul Sandoz, Roderico Cruz Sun Microsystems, Inc. http://jsr311.dev.java.net/ TS-6411 2007 JavaOne SM Conference Session TS-6411 Agenda
More informationInformation About SIP Compliance with RFC 3261
APPENDIX A Information About SIP Compliance with RFC 3261 This appendix describes how the Cisco SIP IP phone complies with the IETF definition of SIP as described in RFC 3261. It has compliance information
More informationMTAT Enterprise System Integration
MTAT.03.229 Enterprise System Integration Lecture 10: WSDL/SOAP Web services Luciano García-Bañuelos University of Tartu The picture Enterpriseso2ware Presenta,on Presenta,on Integra,onlayer Applica,onlogic
More informationQliq Cloud API Guide
Qliq Cloud API Guide QliqSOFT provides Cloud API for third party applications to send Secure Messages to Qliq users. Following steps need to be performed prior to sending messages: 1. The Application provider
More informationJAX-RS. Sam Guinea
JAX-RS Sam Guinea guinea@elet.polimi.it http://servicetechnologies.wordpress.com/ JAX-RS Java API that provides support in creating services according to the REST architectural style. JAX-RS uses annotations
More informationCompliance with RFC 3261
APPENDIX A Compliance with RFC 3261 This appendix describes how the Cisco Unified IP Phone 7960G and 7940G complies with the IETF definition of SIP as described in RFC 3261. It contains compliance information
More informationTools for Accessing REST APIs
APPENDIX A Tools for Accessing REST APIs When you have to work in an agile development environment, you need to be able to quickly test your API. In this appendix, you will learn about open source REST
More informationLUCITY REST API INTRODUCTION AND CORE CONCEPTS
LUCITY REST API INTRODUCTION AND CORE CONCEPTS REST API OFFERINGS Lucity Citizen Portal REST API Lucity REST API Both products are included in our REST API Historically we also offered a COM API and a.net
More informationDevelop Mobile Front Ends Using Mobile Application Framework A - 2
Develop Mobile Front Ends Using Mobile Application Framework A - 2 Develop Mobile Front Ends Using Mobile Application Framework A - 3 Develop Mobile Front Ends Using Mobile Application Framework A - 4
More informationArchitecture of the World Wide Web Web Informa4on Systems. CS/INFO 431 January 30, 2008 Carl Lagoze Spring 2008
Architecture of the World Wide Web Web Informa4on Systems CS/INFO 431 January 30, 2008 Carl Lagoze Spring 2008 Acknowledgments Erik Wilde UC Berkeley h@p://dret.net/lectures/infosys ws06/h@p Looking beyond
More informationCopyright 2014 Blue Net Corporation. All rights reserved
a) Abstract: REST is a framework built on the principle of today's World Wide Web. Yes it uses the principles of WWW in way it is a challenge to lay down a new architecture that is already widely deployed
More informationIntegration Services 2014
Integration Services 2014 Raitis Grinbergs and Dan Wyand EPiServer Commerce Development The Choice for Leaders in Digital Current Integration PIM DAM Catalog XML Media CMS Media Commerce Goals Improve
More informationIntroduction to RESTful Web Services. Presented by Steve Ives
1 Introduction to RESTful Web Services Presented by Steve Ives Introduction to RESTful Web Services What are web services? How are web services implemented? Why are web services used? Categories of web
More informationSYMFONY2 WEB FRAMEWORK
1 5828 Foundations of Software Engineering Spring 2012 SYMFONY2 WEB FRAMEWORK By Mazin Hakeem Khaled Alanezi 2 Agenda Introduction What is a Framework? Why Use a Framework? What is Symfony2? Symfony2 from
More informationKIWIRE 2.0 PMS API. Version (July 2017)
KIWIRE 2.0 PMS API Version 1.0.0 (July 2017) Proprietary Information Notice This document is proprietary to Synchroweb (M) Sdn. Bhd. By utilizing this document, the recipient agrees to avoid publication
More informationCheckout Service API User Guide
MicroMacro Mobile Inc. Checkout Service API User Guide API Version 2.0 October 02, 2017 Version History Version UpdatedAt Note 1.0 February 19, 2016 The original Checkout Service API and documentation
More informationSoftware LEIC/LETI. Lecture 15
Software Engineering @ LEIC/LETI Lecture 15 Last Lecture Software Architecture Architectural Patterns Application Architectures Software Architecture in the Project Today Enterprise Application Architecture
More informationREST Services. Zaenal Akbar
PS/ Web Services REST Services Zaenal Akbar Friday, - - Outline REST Services Overview Principles Common Errors Exercise What is REST? Set of architectural principles used for design of distributed systems
More informationREST in a Nutshell: A Mini Guide for Python Developers
REST in a Nutshell: A Mini Guide for Python Developers REST is essentially a set of useful conventions for structuring a web API. By "web API", I mean an API that you interact with over HTTP - making requests
More informationCoding Intro to APIs and REST
DEVNET-3607 Coding 1001 - Intro to APIs and REST Matthew DeNapoli DevNet Developer Evangelist Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this session
More informationDigital Imaging and Communications in Medicine (DICOM) Supplement 194: RESTful Services for Non-Patient Instances
1/20/2016 3:37 PM Supplement XXX: Non-Patient Instances RESTful Service Page 1 5 10 Digital Imaging and Communications in Medicine (DICOM) Supplement 194: RESTful Services for Non-Patient Instances 15
More informationMobile Computing. Logic and data sharing. REST style for web services. Operation verbs. RESTful Services
Logic and data sharing Mobile Computing Interface Logic Services Logic Data Sync, Caches, Queues Data Mobile Client Server RESTful Services RESTful Services 2 REST style for web services REST Representational
More informationRecitation 3 Class and Objects
1.00/1.001 Introduction to Computers and Engineering Problem Solving Recitation 3 Class and Objects Spring 2012 1 Scope One method cannot see variables in another; Variables created inside a block: { exist
More informationRAD, Rules, and Compatibility: What's Coming in Kuali Rice 2.0
software development simplified RAD, Rules, and Compatibility: What's Coming in Kuali Rice 2.0 Eric Westfall - Indiana University JASIG 2011 For those who don t know Kuali Rice consists of mul8ple sub-
More informationBetter Translation Technology. XTM Connect for Drupal 8
Better Translation Technology XTM Connect for Drupal 8 Documentation for XTM Connect for Drupal 8. Published by XTM International Ltd. Copyright XTM International Ltd. All rights reserved. No part of this
More informationCloud Data Management System (CDMS)
Cloud Management System (CMS) Wiqar Chaudry Solu9ons Engineer Senior Advisor CMS Overview he OpenStack cloud data management system features a canonical data modeling framework designed to broker context
More informationf5-icontrol-rest Documentation
f5-icontrol-rest Documentation Release 1.3.10 F5 Networks Aug 04, 2018 Contents 1 Overview 1 2 Installation 3 2.1 Using Pip................................................. 3 2.2 GitHub..................................................
More informationWeek 3 Classes and Objects
Week 3 Classes and Objects written by Alexandros Evangelidis, adapted from J. Gardiner et al. 13 October 2015 1 Last Week Last week, we looked at some of the different types available in Java, and the
More informationHypertext Transport Protocol
Hypertext Transport Protocol HTTP Hypertext Transport Protocol Language of the Web protocol used for communication between web browsers and web servers TCP port 80 HTTP - URLs URL Uniform Resource Locator
More informationOMF Documentation. Release 1.1-alpha1. OSIsoft, LLC
OMF Documentation Release 1.1-alpha1 OSIsoft, LLC Oct 03, 2018 Contents 1 v1.1 1 2 Overview 3 3 Contents 5 3.1 What s New............................................... 5 3.2 Headers..................................................
More information04 Webservices. Web APIs REST Coulouris. Roy Fielding, Aphrodite, chp.9. Chp 5/6
04 Webservices Web APIs REST Coulouris chp.9 Roy Fielding, 2000 Chp 5/6 Aphrodite, 2002 http://www.xml.com/pub/a/2004/12/01/restful-web.html http://www.restapitutorial.com Webservice "A Web service is
More informationStefan Tilkov innoq Deutschland GmbH REST + JSR 311 Java API for RESTful Web Services
Stefan Tilkov innoq Deutschland GmbH stefan.tilkov@innoq.com REST + JSR 311 Java API for RESTful Web Services Contents An Introduction to REST Why REST Matters REST And Web Services JSR 311 Intro Demo
More informationError Transferring File Server Returned Http Response Code 407 For Url
Error Transferring File Server Returned Http Response Code 407 For Url HTTP 1.1 has a number of response codes which are sent from the server to inform Code 200 specifically means that a URL/URI points
More informationAccessing the Progress OpenEdge AppServer. From Progress Rollbase. Using Object Script
Accessing the Progress OpenEdge AppServer From Progress Rollbase Using Object Script Introduction Progress Rollbase provides a simple way to create a web-based, multi-tenanted and customizable application
More informationFlexible EAI-Lösungen mit Glassfish
Flexible EAI-Lösungen mit Glassfish Praxisbeispiele und War Stories zu EAI-Pattern Alexander Heusingfeld, @goldstift Martin Huber, @waterback We take care of it - personally! EAI Pattern in 2013? EAI
More informationCanonical Identity Provider Documentation
Canonical Identity Provider Documentation Release Canonical Ltd. December 14, 2018 Contents 1 API 3 1.1 General considerations.......................................... 3 1.2 Rate limiting...............................................
More informationNasuni Data API Nasuni Corporation Boston, MA
Nasuni Corporation Boston, MA Introduction The Nasuni API has been available in the Nasuni Filer since September 2012 (version 4.0.1) and is in use by hundreds of mobile clients worldwide. Previously,
More informationAmazon Glacier. Developer Guide API Version
Amazon Glacier Developer Guide Amazon Glacier: Developer Guide Copyright 2018 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in
More informationHypermedia Web API for enhanced Heterogeneous Missions Accessibility
Hypermedia Web API for enhanced Heterogeneous Missions Accessibility Y. Coene, Spacebel s.a. Frascati, June 30, 2015 Page 1 Outline Architecture trends REST Hypermedia API Aspects of Hypermedia API REST:
More informationTechnical Guide. REST API for Mobile Outbound SMS
Technical Guide REST API for Mobile Outbound SMS Munich +49 89 202 451 100 Singapore +65 6478 3020 London +44 207 436 0283 San Francisco +1 415 527 0903 sales@tyntec.com www.tyntec.com Table of Contents
More informationSOAP API. The correct URL has been hidden. Please contact your account manager for the full URL information.
SMS Help Guides TNZ Group Limited sales@tnz.co.nz +64 9 9293000 +64 9 522 8839 SOAP API SOAP is a simple way of sending SMS/TXT messages via the internet. It is a great solution for integration into existing
More informationCOMPUTER NETWORKS AND COMMUNICATION PROTOCOLS. Web Access: HTTP Mehmet KORKMAZ
COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS Web Access: HTTP 16501018 Mehmet KORKMAZ World Wide Web What is WWW? WWW = World Wide Web = Web!= Internet Internet is a global system of interconnected computer
More informationRe#ring Your Old Computer. Created by Sherry Surdam
Re#ring Your Old Computer Created by Sherry Surdam Did Pete Wood's informa#ve program on what to look for in a PC or laptop, inspire you to run right out for a new computer? No? Well, with Windows 7 on
More informationAn ontology of resources for Linked Data
An ontology of resources for Linked Data Harry Halpin and Valen8na Presu: LDOW @ WWW2009 Madrid, April 20th Outline Premises and background Proposal overview Some details of IRW ontology Simple applica8on
More informationORACLE APPLICATION EXPRESS, ORACLE REST DATA SERVICES, & WEBLOGIC 12C AUTHOR: BRAD GIBSON SENIOR SOLUTIONS ARCHITECT ADVIZEX
ORACLE APPLICATION EXPRESS, ORACLE REST DATA SERVICES, & WEBLOGIC 12C AUTHOR: BRAD GIBSON SENIOR SOLUTIONS ARCHITECT ADVIZEX AdvizeX Technologies - A Rolta Company 6/12/2015 1 AGENDA Introductions Test
More informationDRAFT COPY
Inter-Entity Payment Protocol (IPP) The Inter-Entity Payment Protocol (IPP) facilitates adhoc interactions between independent accounting systems on the web. It is a server-to-server protocol. 1 Brands,
More informationD, E I, J, K, L O, P, Q
Index A Application development Drupal CMS, 2 library, toolkits, and packages, 3 scratch CMS (see Content management system (CMS)) cost quality, 5 6 depression, 4 enterprise, 10 12 library, 5, 10 scale
More informationPartner Web Services. GetMyPrice Service Manual
Partner Web Services GetMyPrice Service Manual Contents 1 Introduction... 5 1.1 Overview... 5 1.2 Supporting Resources... 5 2 Service Overview... 5 2.1 Benefits of GetMyPrice Service... 6 3 Service Endpoints...
More informationActive Market API v2
Active Market API v2 Document Revision 1.0 Date of Issue: 10 May 2018 Date of revision: 10 May 2018 Nick Palmer Product Manager Page 1 of 18 Table of Contents 1. Purpose... 3 2. Glossary of Terms... 3
More informationPositive Pay Quick Start Guide
Positive Pay Quick Start Guide Welcome to Positive Pay With Positive Pay, you provide us with information about the checks you write and we compare that information against the physical checks when they
More informationSPRING MOCK TEST SPRING MOCK TEST I
http://www.tutorialspoint.com SPRING MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to Spring Framework. You can download these sample mock tests at
More information