SlideShare a Scribd company logo
sysco.no
REST – Why, When and How? Jon Petter Hjulstad
+ Arturo & Jorge
AMIS 25 – Beyond the Horizon
sysco.no
Overview
• About Speaker / Sysco
• Why REST ?
• REST ADLs – who is the winner ?
• A Norwegian sample
• REST Support is in SOA Suite / OSB
• REST Support in Oracle PaaS
• Q&A
sysco.no
Information about me
• Jon Petter Hjulstad
• Dept Manager for Middleware at Sysco
• 20 years experience with Oracle Products
• Focusing on WLS, SOA Suite, BPM Suite ++
• SOA Partner Community Award 2012
• WLS Partner Community Award 2015
• Oracle ACE Associate
• Twitter: jphjulstad
• Blog: http://blog.sysco.no/
• Sysco is now part of Red Expert Alliance
Info
sysco.no
Company Facts
• Established in 2004
• More than 100 employees
• 9 Office Locations
• Bergen, Haugesund, Lima, Oslo, Stavanger, Stord, Ølen, Copenhagen, Stockholm
• 162 mNOK revenue in 2015
• Industry focus on Utilities, experts on Oracle technology
About SYSCO
2009-2014
sysco.no
We deliver the Red-Stack
- Engineered systems
- Exadata, Exalogic, ODA, BDA, PCA
- Business Intelligence
- Analytics
- Visualizer
- Big data
- Database
- Oracle VM
- Integration, SOA
- Identity Management IDM
- Cloud
- Application Foundation
- Application Builder
- MCS
- DBaaS
- Licenses LMA
- Customer Experience CX
Oracle Center of Excellence
sysco.no
Why REST?
sysco.no
Why REST?
• Why would anyone choose SOAP (Simple Object Access Protocol)
instead of REST ?
• The general rule of thumb: ‘Unless you have a definitive reason to
use SOAP use REST’.
• REST-JSON vs REST-XML
• JSON: Simple syntax, less
“markup”
• XML: More complex, mature,
Schema, XSLT,
Xquery, Namespaces etc.
sysco.no
REST vs SOAP
• Why REST?
– REST uses standard HTTP
– so it is much simpler
– REST permits many different
data formats - SOAP only
permits XML
– REST has better
performance and scalability
– Smaller messages – less
overhead
– Mobile developers know
REST
• Why SOAP?
– Wider support for
transaction support
– Better support for
transaction support/security
- WS-Security, WS-
AtomicTransaction, WS-
ReliableMessaging
– More robust error handling
– Your developer tools may
not support REST yet
sysco.no
REST vs SOAP for Mobile Applications
• A-Team has done a comparison – look at http://www.ateam-
oracle.com/performance-study-rest-vs-soap-for-mobile-applications/
• REST-JSON is 9 to 30 times faster than SOAP in mobile
applications
sysco.no
REST APIs
• Beginning – Lack of standards
• Now - Broad set of standards
• Would be good if all REST services have a definition, but this is not
always the case
– And there in not one de facto standard
sysco.no
Goals of Metadata APIs
• Common goal of current metadata formats for REST APIs is to
specify (*):
– Entry point(s)
– Resource paths
– Methods to access these resources (GET, POST, PUT, etc.…)
– Parameters that need to be supplied with these methods (Query,
Template, HTTP Header, etc.)
– Formats of inbound / outbound messages/representations (JSON
Schema, XML Schema, Relax NG, etc.)
– Status codes and error/fault messages
– Documentary information (descriptions, etc.) for all these
– Example data *) http://apiux.com/2013/04/09/rest-metadata-formats/
sysco.no
Overview of RESTful API Description Languages (ADL)
• Web Services Description Language 2.0 (WSDL)
• Web Application Description Language (WADL)
• Open Data Protocol (OData)
• Swagger – OpenAPI
• RESTful Service Description Language (RSDL)
• RESTful API Modeling Language (RAML)
• API Blueprint
• Apache Avro
sysco.no
Oracle Product support for REST APIs
From Luis Weir: http://www.soa4u.co.uk/2016/05/converting-adls-to-implement-end-to-end.html
sysco.no
WADL
• WADL (Web Application Definition Language)
• WADL is used in SOA Suite / OSB and Process Cloud Service
• XML Description
• Submitted to WWC by Sun 2009 – but no plan to standardize
• The older of the mentioned standards
• Not much used
sysco.no
Swagger
• SmartBear supported
• Broad adoption
• Swagger improved in many
ways on WADL
• Great tooling
• Limited support of JSON
Schema, no support of XML schemas
sysco.no
RESTful API Modeling Language (RAML)
sysco.no
RAML Technology Primer
• https://www.youtube.com/watch?v=tGcfv7HsAnE
• By Chris Muir – «I like RAML!!»
sysco.no
RAML
• RAML 1.0 is available since may 16th, 2016
• 0.8 is the version you normally will see supported
• Aimed at full lifecycle of API
• Focused on reuse
– Resource Types
– Traits
• Documentation
• Test data (samples)
• Detailed Specification
• I think also RAML is my favorite
sysco.no
RAML 1.0
• Data types: a unified, streamlined, and powerful way to model data wherever it
appears in an API.
– Uniformly covers bodies, URI parameters, headers, and query parameters and eliminates the
need for a separate formParameters construct
– Supports wrapping XML Schema and JSON Schema and even referring to sub-schemas, but
in many cases just obviates the schemas
– Simplifies coding, compared to the JSON Schema or XML Schema, by being YAML-based
• Multiple Examples: expressible in YAML, and annotatable so that semantics can be
injected
• Annotations: a tried-and-tested, strongly-typed mechanism for extensibility
• Libraries: improved modularity for broad reuse of API artifacts
• Overlays and Extensions: increased extensibility through separated files
• Improved Security Schemes:
– Wider OAuth support
– Support for pass-through (key-based) security schemes
– Support for signatures
From spec: https://github.com/raml-org/raml-spec/releases/tag/1.0
sysco.no
Comparison I
• http://www.slideshare.net/SmartBear_Software/api-strat-
2014metadataformatsshort
sysco.no
Comparison II
• http://forums.raml.org/t/how-is-this-different-from-swagger/24/8
sysco.no
Comparison III
• http://www.mikestowe.com/blog/2014/07/raml-vs-swagger-vs-api-
blueprint.php
sysco.no
API-Transformer
• Transform API Descriptions from/to various
formats - Developed by APIMATIC – Online tool
sysco.no
API-Transformer
• Is also an API
sysco.no
Transformation
• What will you loose going from one ADL to another ?
• A detailed comparison would be useful
• Normally would have to make one file «flatten» to be able to
transform
sysco.no
A Norwegian Sample
sysco.no
Norwegian datasets
• http://hotell.difi.no/
• Want to look at
municipalities
• http://hotell.difi.no/api/json/difi/geo/kommune
sysco.no
Norwegian datasets
• http://hotell.difi.no/api/xml/difi/geo/kommune
• Can use pagination:
add ?page=2 to URL to see next page
• Can search/filter:
– /api/json/difi/geo/kommune?query=levanger
– /api/json/difi/geo/kommune?fylke=05
• Can get metadata
– /api/json/difi/geo/kommune/fields
sysco.no
REST - properties
• URI format -
[protocol]/[server]:[port]/[servicename]/[resource]/{resource id}
• Parmameters
– As part of URI
– As body
– As a query parameter
– As a request header
• Verbs
– GET, PUT, POST, DELETE, OPTIONS, HEAD
sysco.no
REST - operations
Verb Operations performed on server Impact
GET Read a resource No impact (change) on resource
PUT Insert a new resource or update if it already exists Idempotent
POST Insert a new resource or update if it already exists Non idempotent
DELETE Delete a resource Idempotent
OPTIONS List the allowed operations on a resource No impact (change) on resource
HEAD Return only response headers and no response body No impact (change) on resource
Safe = no impact on the resource
Idempotent = the same result, no matter how often you call it
PUT: only creates a resource if you provide all the values including the ID (requires a complete URI)
POST: create a new resource every time it is called, or update the resource if it already exists
From: Lonneke Dikmans presentation at UKTech15
sysco.no
REST Support in SOA Suite / OSB
sysco.no
REST - support
• Before 12.1.3 REST support had to be done by hand in OSB
– Or in Spring Adapter or Socket Adapter (have seen blogs)
• SOA Suite 12.1.3/12.2.1 supports WADL
• SOA Suite 12.1.3 added REST adapter – inbound and outbound
• SOA Suite 12.2.1 supports End-To-End JSON with JavaScript
• Mobile Cloud Service (MCS) supports RAML
– Use Node.js to implement
• This presentation will show use of the REST adapter (reference)
sysco.no
Outbound - The 3 choices we have
1. Utilizing an existing WADL
2. Creating a WADL from a different ADL description
3. Creating an WADL using the Wizard in Jdeveloper
All services should be modeled in an ADL
Resource Paths
Operations
Parameters
Request / Response
sysco.no
Inbound - The 2+1 choices we have
1. Utilizing an existing WADL
2. Creating an WADL using the Wizard in Jdeveloper
Given that you have to make service description available as WADL
3. Make API available in different ADL by manually adding that – or
make it part of pipeline
sysco.no
REST Binding
sysco.no
REST Binding
sysco.no
WADL
• The application element forms the root of a WADL description and
contains the following (XML):
– Zero or more doc elements
– An optional grammars element
– Zero or more resources elements
– Zero or more of the following:
• resource_type elements
• method elements
• representation elements
• param elements
https://en.wikipedia.org/wiki/Web_Application_Description_Language
sysco.no
Sample WADL for our JSON Reference
sysco.no
Sample JSON Reference
sysco.no
Sample XML Reference
sysco.no
Use Cases
• SOAP Service – Expose as REST
– Common case for Mobile Apps
• REST Service – Expose as SOAP
– SOAP enabling for «old-school»
• Technology Adapter – Expose as REST
– Database Tables, Procedures
– LDAP
– Socket
• Composite REST Service
– Bottom-up designed service
sysco.no
SOA Suite 12.2.1 end-to-end JSON
• Performance
• Reuse JavaScript Competence
• Some things will be easier to implement
• Can mix JSON / SOAP
sysco.no
REST Support in Oracle PaaS
sysco.no
Too many facets?
• Mobile Cloud Service -> RAML
• API Platform -> Swagger / Blueprint
• SOA CS -> WADL
It is good to have support for many standards but also some
consistency is much needed when it comes to API / REST design
sysco.no
REST Support in Java EE
sysco.no
Java EE/RAML Integration
• Bottom/Up approach
– Turning your JAX-RS annotations into RAML specifications.
– Reusing Swagger annotations to document REST services
• Top/Down approach
– Turning your RAML specifications into JAX-RS interfaces
– «Contract-first»
sysco.no
Java EE/RAML Sample
sysco.no
Java EE/RAML Sample
sysco.no
Java EE/RAML Sample
sysco.no
Q & A
sysco.no
Enjoy the AMIS conference!
SYSCO 2016

More Related Content

What's hot

No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...
No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...
No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...
Jérôme Françoisse
 
Overview of Oracle Product Portfolio (focus on Platform) - April, 2017
Overview of Oracle Product Portfolio (focus on Platform) - April, 2017Overview of Oracle Product Portfolio (focus on Platform) - April, 2017
Overview of Oracle Product Portfolio (focus on Platform) - April, 2017
Lucas Jellema
 
Handson Oracle Management Cloud with Application Performance Monitoring and L...
Handson Oracle Management Cloud with Application Performance Monitoring and L...Handson Oracle Management Cloud with Application Performance Monitoring and L...
Handson Oracle Management Cloud with Application Performance Monitoring and L...
Lucas Jellema
 
2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud
Marcus Vinicius Miguel Pedro
 
Exploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscapeExploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscape
Alex Thissen
 
6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)
6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)
6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)
Lucas Jellema
 
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
Getting value from IoT, Integration and Data Analytics
 
Review Oracle OpenWorld 2015 - Overview, Main themes, Announcements and Future
Review Oracle OpenWorld 2015 - Overview, Main themes, Announcements and FutureReview Oracle OpenWorld 2015 - Overview, Main themes, Announcements and Future
Review Oracle OpenWorld 2015 - Overview, Main themes, Announcements and Future
Lucas Jellema
 
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
Getting value from IoT, Integration and Data Analytics
 
Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...
Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...
Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...
Lucas Jellema
 
Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.
Rolta
 
AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...
AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...
AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...
Getting value from IoT, Integration and Data Analytics
 
Oow2016 review--paas-microservices-
Oow2016 review--paas-microservices-Oow2016 review--paas-microservices-
Oow2016 review--paas-microservices-
Getting value from IoT, Integration and Data Analytics
 
oracle openworld review UX presentation 2016
oracle openworld review UX presentation 2016oracle openworld review UX presentation 2016
oracle openworld review UX presentation 2016
Getting value from IoT, Integration and Data Analytics
 
Business and IT agility through DevOps and microservice architecture powered ...
Business and IT agility through DevOps and microservice architecture powered ...Business and IT agility through DevOps and microservice architecture powered ...
Business and IT agility through DevOps and microservice architecture powered ...
Lucas Jellema
 
Oow2016 review-13th october 2016
Oow2016 review-13th october 2016Oow2016 review-13th october 2016
The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...
The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...
The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...
Lucas Jellema
 
Introduction to Node (15th May 2017)
Introduction to Node (15th May 2017)Introduction to Node (15th May 2017)
Introduction to Node (15th May 2017)
Lucas Jellema
 
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
Lucas Jellema
 
Oracle WebLogic 12c New Multitenancy features
Oracle WebLogic 12c New Multitenancy featuresOracle WebLogic 12c New Multitenancy features
Oracle WebLogic 12c New Multitenancy features
Michel Schildmeijer
 

What's hot (20)

No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...
No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...
No more Big Data Hacking—Time for a Complete ETL Solution with Oracle Data In...
 
Overview of Oracle Product Portfolio (focus on Platform) - April, 2017
Overview of Oracle Product Portfolio (focus on Platform) - April, 2017Overview of Oracle Product Portfolio (focus on Platform) - April, 2017
Overview of Oracle Product Portfolio (focus on Platform) - April, 2017
 
Handson Oracle Management Cloud with Application Performance Monitoring and L...
Handson Oracle Management Cloud with Application Performance Monitoring and L...Handson Oracle Management Cloud with Application Performance Monitoring and L...
Handson Oracle Management Cloud with Application Performance Monitoring and L...
 
2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud
 
Exploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscapeExploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscape
 
6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)
6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)
6Reinventing Oracle Systems in a Cloudy World (Sangam20, December 2020)
 
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
 
Review Oracle OpenWorld 2015 - Overview, Main themes, Announcements and Future
Review Oracle OpenWorld 2015 - Overview, Main themes, Announcements and FutureReview Oracle OpenWorld 2015 - Overview, Main themes, Announcements and Future
Review Oracle OpenWorld 2015 - Overview, Main themes, Announcements and Future
 
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
AMIS Oracle OpenWorld 2015 Review – part 2- Hardware & IaaS and PaaS Cloud Fo...
 
Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...
Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...
Oracle OpenWorld 2016 Review - Focus on Data, BigData, Streaming Data, Machin...
 
Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.Oracle Enterprise Manager 12c: updates and upgrades.
Oracle Enterprise Manager 12c: updates and upgrades.
 
AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...
AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...
AMIS Oracle OpenWorld 2015 Review – part 4- PaaS Application Development, Jav...
 
Oow2016 review--paas-microservices-
Oow2016 review--paas-microservices-Oow2016 review--paas-microservices-
Oow2016 review--paas-microservices-
 
oracle openworld review UX presentation 2016
oracle openworld review UX presentation 2016oracle openworld review UX presentation 2016
oracle openworld review UX presentation 2016
 
Business and IT agility through DevOps and microservice architecture powered ...
Business and IT agility through DevOps and microservice architecture powered ...Business and IT agility through DevOps and microservice architecture powered ...
Business and IT agility through DevOps and microservice architecture powered ...
 
Oow2016 review-13th october 2016
Oow2016 review-13th october 2016Oow2016 review-13th october 2016
Oow2016 review-13th october 2016
 
The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...
The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...
The True State of the Oracle Public Cloud - Dutch Oracle Architects Platform ...
 
Introduction to Node (15th May 2017)
Introduction to Node (15th May 2017)Introduction to Node (15th May 2017)
Introduction to Node (15th May 2017)
 
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
Getting Started, Low Hanging Fruit: Our First Experiences with Oracle Managem...
 
Oracle WebLogic 12c New Multitenancy features
Oracle WebLogic 12c New Multitenancy featuresOracle WebLogic 12c New Multitenancy features
Oracle WebLogic 12c New Multitenancy features
 

Viewers also liked

Sergio
SergioSergio
Sergio
falabyu
 
The power to save the world
The power to save the worldThe power to save the world
The power to save the world
Angelique Lusuan
 
Products
ProductsProducts
Productshtrdano
 
Keep your heart in the right place
Keep your heart in the right placeKeep your heart in the right place
Keep your heart in the right place
Vinod Sailes
 
People around us
People around usPeople around us
People around us
Vinod Sailes
 
Conceptos básicos de historia no completo
Conceptos básicos de historia no completoConceptos básicos de historia no completo
Conceptos básicos de historia no completoaranferpra
 
Dez1
Dez1Dez1
Proposed Bus Stop
Proposed Bus StopProposed Bus Stop
Proposed Bus Stop
Samuel Stafford
 
Proposal HunianOnline
Proposal HunianOnlineProposal HunianOnline
Proposal HunianOnline
vcreativemedia
 
Golden opportunity to invest
Golden opportunity to investGolden opportunity to invest
Golden opportunity to invest
Fausto Cuzco
 
RTC Migration for EM Services Offerings from Rational Lab Services
RTC Migration for EM Services Offerings from Rational Lab Services RTC Migration for EM Services Offerings from Rational Lab Services
RTC Migration for EM Services Offerings from Rational Lab Services IBM Rational software
 
How to Build Your Brand with UC
How to Build Your Brand with UCHow to Build Your Brand with UC
How to Build Your Brand with UC
Digium
 
Agency1 full keynote_22_07_13
Agency1 full keynote_22_07_13Agency1 full keynote_22_07_13
Agency1 full keynote_22_07_13Sergey Vorobyov
 
Doc va viet thu bang tieng anh
Doc va viet thu bang tieng anhDoc va viet thu bang tieng anh
Doc va viet thu bang tieng anh
Tran Oanh
 
бібліотека +читач
бібліотека +читачбібліотека +читач
бібліотека +читачМарина Жук
 
Scifood lecture
Scifood lectureScifood lecture
Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...
Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...
Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...
Digium
 
NapoleonCat.com - InternetBeta2013
NapoleonCat.com - InternetBeta2013NapoleonCat.com - InternetBeta2013
NapoleonCat.com - InternetBeta2013
NapoleonCat.com
 
Evaluation
EvaluationEvaluation
EvaluationStunnah
 

Viewers also liked (20)

Dez1
Dez1Dez1
Dez1
 
Sergio
SergioSergio
Sergio
 
The power to save the world
The power to save the worldThe power to save the world
The power to save the world
 
Products
ProductsProducts
Products
 
Keep your heart in the right place
Keep your heart in the right placeKeep your heart in the right place
Keep your heart in the right place
 
People around us
People around usPeople around us
People around us
 
Conceptos básicos de historia no completo
Conceptos básicos de historia no completoConceptos básicos de historia no completo
Conceptos básicos de historia no completo
 
Dez1
Dez1Dez1
Dez1
 
Proposed Bus Stop
Proposed Bus StopProposed Bus Stop
Proposed Bus Stop
 
Proposal HunianOnline
Proposal HunianOnlineProposal HunianOnline
Proposal HunianOnline
 
Golden opportunity to invest
Golden opportunity to investGolden opportunity to invest
Golden opportunity to invest
 
RTC Migration for EM Services Offerings from Rational Lab Services
RTC Migration for EM Services Offerings from Rational Lab Services RTC Migration for EM Services Offerings from Rational Lab Services
RTC Migration for EM Services Offerings from Rational Lab Services
 
How to Build Your Brand with UC
How to Build Your Brand with UCHow to Build Your Brand with UC
How to Build Your Brand with UC
 
Agency1 full keynote_22_07_13
Agency1 full keynote_22_07_13Agency1 full keynote_22_07_13
Agency1 full keynote_22_07_13
 
Doc va viet thu bang tieng anh
Doc va viet thu bang tieng anhDoc va viet thu bang tieng anh
Doc va viet thu bang tieng anh
 
бібліотека +читач
бібліотека +читачбібліотека +читач
бібліотека +читач
 
Scifood lecture
Scifood lectureScifood lecture
Scifood lecture
 
Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...
Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...
Automatic Configuration Management for Kamailio and Asterisk in the era of Pu...
 
NapoleonCat.com - InternetBeta2013
NapoleonCat.com - InternetBeta2013NapoleonCat.com - InternetBeta2013
NapoleonCat.com - InternetBeta2013
 
Evaluation
EvaluationEvaluation
Evaluation
 

Similar to REST - Why, When and How? at AMIS25

OUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA SuiteOUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA Suite
Jon Petter Hjulstad
 
Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655
Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655
Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655
Getting value from IoT, Integration and Data Analytics
 
WSO2 ESB Integration with REST
WSO2 ESB Integration with RESTWSO2 ESB Integration with REST
WSO2 ESB Integration with RESTWSO2
 
Role of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EIRole of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EIWSO2
 
SharePoint 2013 - What's New
SharePoint 2013 - What's NewSharePoint 2013 - What's New
SharePoint 2013 - What's New
AdventosConsulting
 
Introduction to SoapUI day 1
Introduction to SoapUI day 1Introduction to SoapUI day 1
Introduction to SoapUI day 1
Qualitest
 
Soap UI - Getting started
Soap UI - Getting startedSoap UI - Getting started
Soap UI - Getting started
Qualitest
 
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise NetworksUsing Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
DataWorks Summit
 
REST API Recommendations
REST API RecommendationsREST API Recommendations
REST API RecommendationsJeelani Shaik
 
From Lucene to Solr 4 Trunk
From Lucene to Solr 4 TrunkFrom Lucene to Solr 4 Trunk
From Lucene to Solr 4 Trunk
tdthomassld
 
FOSDEM19 MySQL Component Infrastructure
FOSDEM19 MySQL Component InfrastructureFOSDEM19 MySQL Component Infrastructure
FOSDEM19 MySQL Component Infrastructure
Georgi Kodinov
 
Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB WSO2
 
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise NetworksUsing Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
MapR Technologies
 
Hia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economyHia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economy
Andrew Coleman
 
(ATS6-DEV02) Web Application Strategies
(ATS6-DEV02) Web Application Strategies(ATS6-DEV02) Web Application Strategies
(ATS6-DEV02) Web Application Strategies
BIOVIA
 
Flink Forward San Francisco 2018: Dave Torok & Sameer Wadkar - "Embedding Fl...
Flink Forward San Francisco 2018:  Dave Torok & Sameer Wadkar - "Embedding Fl...Flink Forward San Francisco 2018:  Dave Torok & Sameer Wadkar - "Embedding Fl...
Flink Forward San Francisco 2018: Dave Torok & Sameer Wadkar - "Embedding Fl...
Flink Forward
 
Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShell
Geoff Varosky
 
Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7 Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7 WSO2
 
APIs and Services: One Platform or Two?
APIs and Services: One Platform or Two?APIs and Services: One Platform or Two?
APIs and Services: One Platform or Two?Akana
 
API ARU-ARU
API ARU-ARUAPI ARU-ARU

Similar to REST - Why, When and How? at AMIS25 (20)

OUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA SuiteOUGN 2016: Experiences with REST support on OSB/SOA Suite
OUGN 2016: Experiences with REST support on OSB/SOA Suite
 
Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655
Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655
Databasecentricapisonthecloudusingplsqlandnodejscon3153oow2016 160922021655
 
WSO2 ESB Integration with REST
WSO2 ESB Integration with RESTWSO2 ESB Integration with REST
WSO2 ESB Integration with REST
 
Role of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EIRole of Rest vs. Web Services and EI
Role of Rest vs. Web Services and EI
 
SharePoint 2013 - What's New
SharePoint 2013 - What's NewSharePoint 2013 - What's New
SharePoint 2013 - What's New
 
Introduction to SoapUI day 1
Introduction to SoapUI day 1Introduction to SoapUI day 1
Introduction to SoapUI day 1
 
Soap UI - Getting started
Soap UI - Getting startedSoap UI - Getting started
Soap UI - Getting started
 
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise NetworksUsing Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
 
REST API Recommendations
REST API RecommendationsREST API Recommendations
REST API Recommendations
 
From Lucene to Solr 4 Trunk
From Lucene to Solr 4 TrunkFrom Lucene to Solr 4 Trunk
From Lucene to Solr 4 Trunk
 
FOSDEM19 MySQL Component Infrastructure
FOSDEM19 MySQL Component InfrastructureFOSDEM19 MySQL Component Infrastructure
FOSDEM19 MySQL Component Infrastructure
 
Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB Enterprise Integration with the WSO2 ESB
Enterprise Integration with the WSO2 ESB
 
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise NetworksUsing Familiar BI Tools and Hadoop to Analyze Enterprise Networks
Using Familiar BI Tools and Hadoop to Analyze Enterprise Networks
 
Hia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economyHia 1691-using iib-to_support_api_economy
Hia 1691-using iib-to_support_api_economy
 
(ATS6-DEV02) Web Application Strategies
(ATS6-DEV02) Web Application Strategies(ATS6-DEV02) Web Application Strategies
(ATS6-DEV02) Web Application Strategies
 
Flink Forward San Francisco 2018: Dave Torok & Sameer Wadkar - "Embedding Fl...
Flink Forward San Francisco 2018:  Dave Torok & Sameer Wadkar - "Embedding Fl...Flink Forward San Francisco 2018:  Dave Torok & Sameer Wadkar - "Embedding Fl...
Flink Forward San Francisco 2018: Dave Torok & Sameer Wadkar - "Embedding Fl...
 
Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShell
 
Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7 Exploring the WSO2 ESB 4.7
Exploring the WSO2 ESB 4.7
 
APIs and Services: One Platform or Two?
APIs and Services: One Platform or Two?APIs and Services: One Platform or Two?
APIs and Services: One Platform or Two?
 
API ARU-ARU
API ARU-ARUAPI ARU-ARU
API ARU-ARU
 

More from Jon Petter Hjulstad

OUGN 2018 - Chatbot and the need to integrate
OUGN 2018 - Chatbot and the need to integrateOUGN 2018 - Chatbot and the need to integrate
OUGN 2018 - Chatbot and the need to integrate
Jon Petter Hjulstad
 
Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17
Jon Petter Hjulstad
 
SOA 12c upgrade OGh-Tech-2017
SOA 12c upgrade OGh-Tech-2017SOA 12c upgrade OGh-Tech-2017
SOA 12c upgrade OGh-Tech-2017
Jon Petter Hjulstad
 
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
Jon Petter Hjulstad
 
Ougn15 acm
Ougn15 acmOugn15 acm
Booting Weblogic - OOW14
Booting Weblogic - OOW14Booting Weblogic - OOW14
Booting Weblogic - OOW14
Jon Petter Hjulstad
 
Presentation BPM Methodology and Pitfalls
Presentation BPM Methodology and PitfallsPresentation BPM Methodology and Pitfalls
Presentation BPM Methodology and Pitfalls
Jon Petter Hjulstad
 
Configuration / Patching of EM 12c
Configuration / Patching of EM 12cConfiguration / Patching of EM 12c
Configuration / Patching of EM 12cJon Petter Hjulstad
 
SOA Suite Administration from OUGN 2014
SOA Suite Administration from OUGN 2014SOA Suite Administration from OUGN 2014
SOA Suite Administration from OUGN 2014
Jon Petter Hjulstad
 
Weblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platformWeblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platform
Jon Petter Hjulstad
 

More from Jon Petter Hjulstad (11)

OUGN 2018 - Chatbot and the need to integrate
OUGN 2018 - Chatbot and the need to integrateOUGN 2018 - Chatbot and the need to integrate
OUGN 2018 - Chatbot and the need to integrate
 
Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17Status Quo on the automation support in SOA Suite OGhTech17
Status Quo on the automation support in SOA Suite OGhTech17
 
SOA 12c upgrade OGh-Tech-2017
SOA 12c upgrade OGh-Tech-2017SOA 12c upgrade OGh-Tech-2017
SOA 12c upgrade OGh-Tech-2017
 
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
 
Ougn15 acm
Ougn15 acmOugn15 acm
Ougn15 acm
 
Booting Weblogic - OOW14
Booting Weblogic - OOW14Booting Weblogic - OOW14
Booting Weblogic - OOW14
 
Presentation BPM Methodology and Pitfalls
Presentation BPM Methodology and PitfallsPresentation BPM Methodology and Pitfalls
Presentation BPM Methodology and Pitfalls
 
Configuration / Patching of EM 12c
Configuration / Patching of EM 12cConfiguration / Patching of EM 12c
Configuration / Patching of EM 12c
 
Installation of EM 12c
Installation of EM 12cInstallation of EM 12c
Installation of EM 12c
 
SOA Suite Administration from OUGN 2014
SOA Suite Administration from OUGN 2014SOA Suite Administration from OUGN 2014
SOA Suite Administration from OUGN 2014
 
Weblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platformWeblogic 12c experiences - migrations from iAS-platform
Weblogic 12c experiences - migrations from iAS-platform
 

Recently uploaded

tapal brand analysis PPT slide for comptetive data
tapal brand analysis PPT slide for comptetive datatapal brand analysis PPT slide for comptetive data
tapal brand analysis PPT slide for comptetive data
theahmadsaood
 
一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单
ewymefz
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
Subhajit Sahu
 
Jpolillo Amazon PPC - Bid Optimization Sample
Jpolillo Amazon PPC - Bid Optimization SampleJpolillo Amazon PPC - Bid Optimization Sample
Jpolillo Amazon PPC - Bid Optimization Sample
James Polillo
 
一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单
一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单
一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单
ewymefz
 
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
NABLAS株式会社
 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
AbhimanyuSinha9
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
ewymefz
 
Q1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year ReboundQ1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year Rebound
Oppotus
 
Investigate & Recover / StarCompliance.io / Crypto_Crimes
Investigate & Recover / StarCompliance.io / Crypto_CrimesInvestigate & Recover / StarCompliance.io / Crypto_Crimes
Investigate & Recover / StarCompliance.io / Crypto_Crimes
StarCompliance.io
 
Tabula.io Cheatsheet: automate your data workflows
Tabula.io Cheatsheet: automate your data workflowsTabula.io Cheatsheet: automate your data workflows
Tabula.io Cheatsheet: automate your data workflows
alex933524
 
Business update Q1 2024 Lar España Real Estate SOCIMI
Business update Q1 2024 Lar España Real Estate SOCIMIBusiness update Q1 2024 Lar España Real Estate SOCIMI
Business update Q1 2024 Lar España Real Estate SOCIMI
AlejandraGmez176757
 
FP Growth Algorithm and its Applications
FP Growth Algorithm and its ApplicationsFP Growth Algorithm and its Applications
FP Growth Algorithm and its Applications
MaleehaSheikh2
 
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
ewymefz
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Subhajit Sahu
 
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
vcaxypu
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
John Andrews
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
ewymefz
 
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdfSample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Linda486226
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
axoqas
 

Recently uploaded (20)

tapal brand analysis PPT slide for comptetive data
tapal brand analysis PPT slide for comptetive datatapal brand analysis PPT slide for comptetive data
tapal brand analysis PPT slide for comptetive data
 
一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单一比一原版(BU毕业证)波士顿大学毕业证成绩单
一比一原版(BU毕业证)波士顿大学毕业证成绩单
 
Adjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTESAdjusting primitives for graph : SHORT REPORT / NOTES
Adjusting primitives for graph : SHORT REPORT / NOTES
 
Jpolillo Amazon PPC - Bid Optimization Sample
Jpolillo Amazon PPC - Bid Optimization SampleJpolillo Amazon PPC - Bid Optimization Sample
Jpolillo Amazon PPC - Bid Optimization Sample
 
一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单
一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单
一比一原版(UofM毕业证)明尼苏达大学毕业证成绩单
 
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
【社内勉強会資料_Octo: An Open-Source Generalist Robot Policy】
 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
 
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
一比一原版(UMich毕业证)密歇根大学|安娜堡分校毕业证成绩单
 
Q1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year ReboundQ1’2024 Update: MYCI’s Leap Year Rebound
Q1’2024 Update: MYCI’s Leap Year Rebound
 
Investigate & Recover / StarCompliance.io / Crypto_Crimes
Investigate & Recover / StarCompliance.io / Crypto_CrimesInvestigate & Recover / StarCompliance.io / Crypto_Crimes
Investigate & Recover / StarCompliance.io / Crypto_Crimes
 
Tabula.io Cheatsheet: automate your data workflows
Tabula.io Cheatsheet: automate your data workflowsTabula.io Cheatsheet: automate your data workflows
Tabula.io Cheatsheet: automate your data workflows
 
Business update Q1 2024 Lar España Real Estate SOCIMI
Business update Q1 2024 Lar España Real Estate SOCIMIBusiness update Q1 2024 Lar España Real Estate SOCIMI
Business update Q1 2024 Lar España Real Estate SOCIMI
 
FP Growth Algorithm and its Applications
FP Growth Algorithm and its ApplicationsFP Growth Algorithm and its Applications
FP Growth Algorithm and its Applications
 
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
一比一原版(UPenn毕业证)宾夕法尼亚大学毕业证成绩单
 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
 
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
一比一原版(ArtEZ毕业证)ArtEZ艺术学院毕业证成绩单
 
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
Chatty Kathy - UNC Bootcamp Final Project Presentation - Final Version - 5.23...
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单
 
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdfSample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
 
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
哪里卖(usq毕业证书)南昆士兰大学毕业证研究生文凭证书托福证书原版一模一样
 

REST - Why, When and How? at AMIS25

  • 1. sysco.no REST – Why, When and How? Jon Petter Hjulstad + Arturo & Jorge AMIS 25 – Beyond the Horizon
  • 2. sysco.no Overview • About Speaker / Sysco • Why REST ? • REST ADLs – who is the winner ? • A Norwegian sample • REST Support is in SOA Suite / OSB • REST Support in Oracle PaaS • Q&A
  • 3. sysco.no Information about me • Jon Petter Hjulstad • Dept Manager for Middleware at Sysco • 20 years experience with Oracle Products • Focusing on WLS, SOA Suite, BPM Suite ++ • SOA Partner Community Award 2012 • WLS Partner Community Award 2015 • Oracle ACE Associate • Twitter: jphjulstad • Blog: http://blog.sysco.no/ • Sysco is now part of Red Expert Alliance Info
  • 4. sysco.no Company Facts • Established in 2004 • More than 100 employees • 9 Office Locations • Bergen, Haugesund, Lima, Oslo, Stavanger, Stord, Ølen, Copenhagen, Stockholm • 162 mNOK revenue in 2015 • Industry focus on Utilities, experts on Oracle technology About SYSCO 2009-2014
  • 5. sysco.no We deliver the Red-Stack - Engineered systems - Exadata, Exalogic, ODA, BDA, PCA - Business Intelligence - Analytics - Visualizer - Big data - Database - Oracle VM - Integration, SOA - Identity Management IDM - Cloud - Application Foundation - Application Builder - MCS - DBaaS - Licenses LMA - Customer Experience CX Oracle Center of Excellence
  • 7. sysco.no Why REST? • Why would anyone choose SOAP (Simple Object Access Protocol) instead of REST ? • The general rule of thumb: ‘Unless you have a definitive reason to use SOAP use REST’. • REST-JSON vs REST-XML • JSON: Simple syntax, less “markup” • XML: More complex, mature, Schema, XSLT, Xquery, Namespaces etc.
  • 8. sysco.no REST vs SOAP • Why REST? – REST uses standard HTTP – so it is much simpler – REST permits many different data formats - SOAP only permits XML – REST has better performance and scalability – Smaller messages – less overhead – Mobile developers know REST • Why SOAP? – Wider support for transaction support – Better support for transaction support/security - WS-Security, WS- AtomicTransaction, WS- ReliableMessaging – More robust error handling – Your developer tools may not support REST yet
  • 9. sysco.no REST vs SOAP for Mobile Applications • A-Team has done a comparison – look at http://www.ateam- oracle.com/performance-study-rest-vs-soap-for-mobile-applications/ • REST-JSON is 9 to 30 times faster than SOAP in mobile applications
  • 10. sysco.no REST APIs • Beginning – Lack of standards • Now - Broad set of standards • Would be good if all REST services have a definition, but this is not always the case – And there in not one de facto standard
  • 11. sysco.no Goals of Metadata APIs • Common goal of current metadata formats for REST APIs is to specify (*): – Entry point(s) – Resource paths – Methods to access these resources (GET, POST, PUT, etc.…) – Parameters that need to be supplied with these methods (Query, Template, HTTP Header, etc.) – Formats of inbound / outbound messages/representations (JSON Schema, XML Schema, Relax NG, etc.) – Status codes and error/fault messages – Documentary information (descriptions, etc.) for all these – Example data *) http://apiux.com/2013/04/09/rest-metadata-formats/
  • 12. sysco.no Overview of RESTful API Description Languages (ADL) • Web Services Description Language 2.0 (WSDL) • Web Application Description Language (WADL) • Open Data Protocol (OData) • Swagger – OpenAPI • RESTful Service Description Language (RSDL) • RESTful API Modeling Language (RAML) • API Blueprint • Apache Avro
  • 13. sysco.no Oracle Product support for REST APIs From Luis Weir: http://www.soa4u.co.uk/2016/05/converting-adls-to-implement-end-to-end.html
  • 14. sysco.no WADL • WADL (Web Application Definition Language) • WADL is used in SOA Suite / OSB and Process Cloud Service • XML Description • Submitted to WWC by Sun 2009 – but no plan to standardize • The older of the mentioned standards • Not much used
  • 15. sysco.no Swagger • SmartBear supported • Broad adoption • Swagger improved in many ways on WADL • Great tooling • Limited support of JSON Schema, no support of XML schemas
  • 16. sysco.no RESTful API Modeling Language (RAML)
  • 17. sysco.no RAML Technology Primer • https://www.youtube.com/watch?v=tGcfv7HsAnE • By Chris Muir – «I like RAML!!»
  • 18. sysco.no RAML • RAML 1.0 is available since may 16th, 2016 • 0.8 is the version you normally will see supported • Aimed at full lifecycle of API • Focused on reuse – Resource Types – Traits • Documentation • Test data (samples) • Detailed Specification • I think also RAML is my favorite
  • 19. sysco.no RAML 1.0 • Data types: a unified, streamlined, and powerful way to model data wherever it appears in an API. – Uniformly covers bodies, URI parameters, headers, and query parameters and eliminates the need for a separate formParameters construct – Supports wrapping XML Schema and JSON Schema and even referring to sub-schemas, but in many cases just obviates the schemas – Simplifies coding, compared to the JSON Schema or XML Schema, by being YAML-based • Multiple Examples: expressible in YAML, and annotatable so that semantics can be injected • Annotations: a tried-and-tested, strongly-typed mechanism for extensibility • Libraries: improved modularity for broad reuse of API artifacts • Overlays and Extensions: increased extensibility through separated files • Improved Security Schemes: – Wider OAuth support – Support for pass-through (key-based) security schemes – Support for signatures From spec: https://github.com/raml-org/raml-spec/releases/tag/1.0
  • 23. sysco.no API-Transformer • Transform API Descriptions from/to various formats - Developed by APIMATIC – Online tool
  • 25. sysco.no Transformation • What will you loose going from one ADL to another ? • A detailed comparison would be useful • Normally would have to make one file «flatten» to be able to transform
  • 27. sysco.no Norwegian datasets • http://hotell.difi.no/ • Want to look at municipalities • http://hotell.difi.no/api/json/difi/geo/kommune
  • 28. sysco.no Norwegian datasets • http://hotell.difi.no/api/xml/difi/geo/kommune • Can use pagination: add ?page=2 to URL to see next page • Can search/filter: – /api/json/difi/geo/kommune?query=levanger – /api/json/difi/geo/kommune?fylke=05 • Can get metadata – /api/json/difi/geo/kommune/fields
  • 29. sysco.no REST - properties • URI format - [protocol]/[server]:[port]/[servicename]/[resource]/{resource id} • Parmameters – As part of URI – As body – As a query parameter – As a request header • Verbs – GET, PUT, POST, DELETE, OPTIONS, HEAD
  • 30. sysco.no REST - operations Verb Operations performed on server Impact GET Read a resource No impact (change) on resource PUT Insert a new resource or update if it already exists Idempotent POST Insert a new resource or update if it already exists Non idempotent DELETE Delete a resource Idempotent OPTIONS List the allowed operations on a resource No impact (change) on resource HEAD Return only response headers and no response body No impact (change) on resource Safe = no impact on the resource Idempotent = the same result, no matter how often you call it PUT: only creates a resource if you provide all the values including the ID (requires a complete URI) POST: create a new resource every time it is called, or update the resource if it already exists From: Lonneke Dikmans presentation at UKTech15
  • 31. sysco.no REST Support in SOA Suite / OSB
  • 32. sysco.no REST - support • Before 12.1.3 REST support had to be done by hand in OSB – Or in Spring Adapter or Socket Adapter (have seen blogs) • SOA Suite 12.1.3/12.2.1 supports WADL • SOA Suite 12.1.3 added REST adapter – inbound and outbound • SOA Suite 12.2.1 supports End-To-End JSON with JavaScript • Mobile Cloud Service (MCS) supports RAML – Use Node.js to implement • This presentation will show use of the REST adapter (reference)
  • 33. sysco.no Outbound - The 3 choices we have 1. Utilizing an existing WADL 2. Creating a WADL from a different ADL description 3. Creating an WADL using the Wizard in Jdeveloper All services should be modeled in an ADL Resource Paths Operations Parameters Request / Response
  • 34. sysco.no Inbound - The 2+1 choices we have 1. Utilizing an existing WADL 2. Creating an WADL using the Wizard in Jdeveloper Given that you have to make service description available as WADL 3. Make API available in different ADL by manually adding that – or make it part of pipeline
  • 37. sysco.no WADL • The application element forms the root of a WADL description and contains the following (XML): – Zero or more doc elements – An optional grammars element – Zero or more resources elements – Zero or more of the following: • resource_type elements • method elements • representation elements • param elements https://en.wikipedia.org/wiki/Web_Application_Description_Language
  • 38. sysco.no Sample WADL for our JSON Reference
  • 41. sysco.no Use Cases • SOAP Service – Expose as REST – Common case for Mobile Apps • REST Service – Expose as SOAP – SOAP enabling for «old-school» • Technology Adapter – Expose as REST – Database Tables, Procedures – LDAP – Socket • Composite REST Service – Bottom-up designed service
  • 42. sysco.no SOA Suite 12.2.1 end-to-end JSON • Performance • Reuse JavaScript Competence • Some things will be easier to implement • Can mix JSON / SOAP
  • 44. sysco.no Too many facets? • Mobile Cloud Service -> RAML • API Platform -> Swagger / Blueprint • SOA CS -> WADL It is good to have support for many standards but also some consistency is much needed when it comes to API / REST design
  • 46. sysco.no Java EE/RAML Integration • Bottom/Up approach – Turning your JAX-RS annotations into RAML specifications. – Reusing Swagger annotations to document REST services • Top/Down approach – Turning your RAML specifications into JAX-RS interfaces – «Contract-first»
  • 51. sysco.no Enjoy the AMIS conference! SYSCO 2016