Professional Documents
Culture Documents
Chris Muir
Development Tools Product Management
September, 2015
You tell me
Common
integration
technology for
Fusion Apps
http://cloud.oracle.com/mobile/index.html
http://cloud.oracle.com/mobile/index.html
http://cloud.oracle.com/mobile/index.html
It doesn't have to be
web pages, it can be
any file (media type)
HTTP Request
http://cloud.oracle.com/mobile/index.html
HTTP Response
Request
http://cloud.oracle.com/mobile/index.html
Response
Host: cloud.oracle.com
Host: cloud.oracle.com
Host: cloud.oracle.com
No body
Copyright 2015, Oracle and/or its affiliates. All rights reserved. |
HTTP Response
Request
http://cloud.oracle.com/mobile/index.html
Response
HTTP/1.1 200 OK
Date: 26 Jan 2015 00:02:25 GMT
Server: Apache/2.0.55 (Ubuntu)
Request
Connection: Keep-Alive
http://cloud.oracle.com/mobile/data.json
Etag: "1a690fe-40df-f1645340"
Response
<html>
<head>
<title>Oracle MCS</title>
</head>
..etc..
HTTP/1.1 200 OK
Date: 26 Jan 2015 00:02:25 GMT
Server: Apache/2.0.55 (Ubuntu)
Request
Connection: Keep-Alive
http://cloud.oracle.com/mobile/data.json
Etag: "1a690fe-40df-f1645340"
Response
<html>
<head>
<title>Oracle MCS</title>
</head>
..etc..
HTTP/1.1 200 OK
Date: 26 Jan 2015 00:02:25 GMT
Server: Apache/2.0.55 (Ubuntu)
Request
Connection: Keep-Alive
http://cloud.oracle.com/mobile/data.json
Etag: "1a690fe-40df-f1645340"
Response
<html>
<head>
<title>Oracle MCS</title>
</head>
..etc.. Payload
GET http://host/path/departments
HTTP verbs
Status codes GET http://host/path/departments/hr
GET http://host/path/departments/hr/employees
1xx Informational
Status codes
{"departments: [
Media types {"id":"MAN","name":"Manfacturing"},
{"id":"HR","name":"Human Resources"},
{"id":"FIN","name":"Finance"},
...etc...
]}
You're now a
REST expert
1.0 2010 First release as Oracle APEX Listener with with support for OWA toolkit used by APEX
1.1 2011 First release with REST support for JSON, Microdata, CSV, Pagination. Also added FOP
2.0 2012 OAuth2 support, Integrated with APEX, Multi Database, SQL Developer integration
2.0.6 2014 Renamed to Oracle REST Data Services to emphasize REST commitment
3.0 2015 REST AutoTable, NoSQL, DB12 JSON, Bulk loading over REST,
Transform
HTTP/S
Transform
HTTP/S
Transform
Transform
Transform
https://myhost/myapp/sales/orders/1001 DB returns
result set
Context Root Module Template
{ "orderno": 1001,
HTTP/S & URI "name": "Scott King",
"address": "500 Main street, Innovation CA",
https://myhost/myapp/sales/orders/1001 "items": [ { "itemno": 404, "quantity": 7,
"status": "in process"},
{ "itemno": 303, "quantity": 32,
Context Root Module Template
"status": "closed"} ] }
JSON
Transform Transform Result Set
{ "orderno": 1001,
HTTP/S & URI "name": "Scott King",
"address": "500 Main street, Innovation CA",
https://myhost/myapp/sales/orders/1001 "items": [ { "itemno": 404, "quantity": 7,
"status": "in process"},
{ "itemno": 303, "quantity": 32,
Context Root Module Template
"status": "closed"} ] }
JSON
Transform Transform Result Set
App developers call named URI over HTTP(S) to retrieve and update data
Oracle REST Data Services (ORDS) Developer defines URI<>SQL mapping/binding
Utilizes the data stored in standard relational tables and columns
Several routes:
1. Scripts
2. APEX
3. SQL Developer
Several routes:
1. PL/SQL APIs
2. APEX
3. SQL Developer
Copyright 2015, Oracle and/or its affiliates. All rights reserved. | 116
Don't forget the alternatives:
.#cough #cough and just about every middleware product #hint #hint.
Copyright 2015, Oracle and/or its affiliates. All rights reserved. | 117
Learn More With Gordon Smith
http://bit.ly/letstalkoracle003