end-to-end cloud: oracle java cloud, oracle mobile cloud service, oracle maf, and oracle jet

Post on 14-Jan-2017

3.596 Views

Category:

Internet

7 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

End-to-End Cloud: JCS, MCS, MAF and JET

Andrejus Baranovskis, Oracle ACE Director, Red Samurai Consulting

2About UsOracle Experts Team

• Oracle Fusion Middleware Partner Community Award for Outstanding ACM/BPM Contribution 2015 • Oracle Fusion Middleware Innovation Award Winner 2010 • SOA Partner Community Award for Outstanding Contribution Across the World 2010 • 2010 Enterprise 2.0 Blazer: Enterprise 2.0 Leader Award

ADF, JET, MAF, Cloud, BPM, ACM, SOA, WebCenter, WebLogic

3

Demo Demo Demo

Application Container Cloud QuestionsUse Case Overview

Mobile ApplicationFramework

ADF BC REST andJava Cloud Service

Agenda

Mobile Cloud Service

JavaScript Extension Toolkit

4

USE CASE OVERVIEWOracle Cloud Services for Warehouse.

5ChB Jelly HouseStartup Candy Company

Supply manager is responsible to request warehouse stock update. Gets notification when stock goes below minimum threshold

Stock Supply

Production manager is responsible to log warehouse stock usage.

Production

Producing and selling natural jelly candies. Production process requires warehouse stock shortage tracking. Based in Lithuania, EU.

About

6Application FlowWarehouse Process

Use Stock 01

Threshold 02

Notification 03

Order Stock 04

Production takes stock. JET

application calls MCS REST service to log

stock usage.

JET/MAF & MCS/ACC

Stock is below threshold. MCS

checks condition and sends

notification.

MCS

MCS sends notification.

Manager receives notification, data is

synchronized.

JET/MAF & MCS

Order stock by calling MCS REST

service. Third party invoice data is

updated through ADF BC REST on JCS

JET/MAF & MCS/JCS/ACC

7Technology UsedOracle Cloud and Development Tools

01JCS

02MCS

03ACC

Handling REST services for mobile interface. API Node.js implementation. MCS DB.

Mobile

Running JET Web app, OAuth security, reuse of MCS REST services.

Web app

Integrating with third party HR DB and invoice data.

ADF BC REST

Accessing MCS REST services through mobile.

Deployed to device. Same code as JET.

Mobile access05JET Hybrid

Alternative mobile access, depends on company

skillset.

Mobile access06MAF

Accessing MCS REST services through Web.

Web access04JET

8Cloud Services Interaction FlowUse Case Explanation

DbaaS JCS

ADF

BC

REST

REST

CONNECTOR

MCSREST

ENDPOINTSECURITY

Token Security

API Node.js

DB Connector Notifications

Storage Location

Google/Apple

OAuth

OAuth

JET

JET Hybrid or MAF

9JET InterfaceRunning on ACC (Application Container Cloud)

User responsible for candy production logs stock usage. JET application.

CANDY PRODUCTION

10JET Hybrid InterfaceApplication running on mobile device

Secured by OAuth and MCS Backend. Can be secured by custom secure token.

Security

Consumes MCS REST services and subscribes to notifications raised by MCS custom API.

REST Services and Notifications

JET Hybrid is JET application wrapped into Cordova and deployed to mobile device.

Cordova

User responsible for candy stock supply updates stock numbers.

CANDY STOCK SUPPLY

11

USE CASE DEMOOracle Cloud Services for Warehouse.

12

ADF BC REST & JCS Backend Data Management and Java Cloud Service.

13DbaaS ConfigurationDatabase Cloud

Accessible by public IP. Provides DB admin tools.DB CLOUD MACHINE ACCESS

Provides automatic backup. DB backup option is required for WebLogic 12.2.1 Cloud instance configuration.

BACKUP

14DbaaS BackupCloud Storage Container – REST API

curl -i -X GET -H "X-Storage-User: Storage-redsamurai:abaranovskis@redsamuraiconsulting.com" -H "X-Storage-Pass: *Password*" https://redsamurai.storage.oraclecloud.com/auth/v1.0

HTTP/1.1 200 OKdate: 1472150723577X-Auth-Token: AUTH_tkf83371940961d6a9b1776819e71440d1X-Storage-Token: AUTH_tkf83371940961d6a9b1776819e71440d1X-Storage-Url: https://em2.storage.oraclecloud.com/v1/Storage-redsamurai

1. AUTHENTICATION TOKEN

curl -i -X PUT -H "X-Auth-Token: AUTH_tkf83371940961d6a9b1776819e71440d1" https://em2.storage.oraclecloud.com/v1/Storage-redsamurai/RSDBContainer

curl -i -X PUT -H "X-Auth-Token: AUTH_tkf83371360961d6a9b17f9819e71440d1" https://em2.storage.oraclecloud.com/v1/Storage-redsamurai/RSJCSContainer

2. CREATE STORAGE CONTAINER

15JCS ConfigurationJava Cloud

Can be created in Enterprise Manager Fusion Middleware Control 12c

JDBC DATA SOURCE

Accessible by public IPPUBLIC IP

Use cloud storage container to configure WLS backup.

BACKUP

16ADF BC RESTDevelopment

17ADF BC RESTADF Security – token authentication & authorization

18ADF BC RESTDeployment on JCS

Frank Nimphius, Oracle PM – “Keep in mind that businesses don't start from scratch when a new technology or a new trend arrives. ADF BC REST is (in my opinion) the easiest and most effective option for creating powerful and flexible REST services based on SQL queries” http://bit.ly/2cf5lAP

ADF 12.2.1 BC REST

19

MOBILE CLOUD SERVICE Mobile Data.

20Mobile Cloud ServiceOverview

21ConnectorsADF BC REST Configuration

22ConnectorsRules and Security Tokens

23ConnectorsNode.js and custom API

24ConnectorsSimplifies REST Calls for Mobile Clients

25Custom APIMobile Logic

26Custom APIREST Endpoints

27Custom APIREST Endpoints

28Custom APISecurity

29Custom APISecurity

30Custom APIImplementation with Node.js

31Custom APIImplementation with Node.js

32Custom APIMCS DB API

INSERT GET MERGE

33Custom APIMCS Connector API

34Custom APIMCS Notification API

35Mobile BackendDiagnostics

36Mobile BackendLog from Custom API – Useful for Debugging

37Mobile BackendCross-origin Resource Sharing (CORS) Configuration

38

JET JavaScript Extension Toolkit.

39JETFocus Areas

02

01

03

04

MCS OAuthInstructions to use MCS OAuth in JET.

MCS RESTInstructions to consume MCS REST services in JET.

MCS NotificationsInstructions to register and receive MCS notifications in JET.

JET and JET HybridImplementation principles. JavaScript and HTML is reused in JET and JET Hybrid.

40Create JET Hybrid ApplicationMobile Application As Easy As 1, 2, 3

npm -g install cordova This should be done first time only. npm is the default package manager for the JavaScript runtime environment Node.js

INSTALL CORDOVA

yo oraclejet:hybrid redsamuraiwarehouse --appId=com.warehouse --appName="redsamuraiwarehouse" --template=navbar --platforms=android Yeoman runs as a command-line interface written for Node.js and which combines generating a starter template, managing dependencies

CREATE JET HYBRID APPLICATION

grunt build --platform=android Grunt is a JavaScript task runner BUILD

grunt serve --platform=android --browser --disableLiveReload=trueRUN IN BROWSER

grunt serve --platform=android --destination=deviceRUN ON DEVICE AS APPLICATION

41JET Hybrid ApplicationApplication Structure

42JET ImplementationIndex Page – Dynamic Blocks

43JET ImplementationApplication Controller – Defines Router and Modules

44JET ImplementationChart – HTML and JS

45JET ImplementationGauge – HTML and JS

46JET SecurityMobile Cloud Service OAuth Integration – Download MCS SDK

47JET SecurityMobile Cloud Service OAuth Integration – Backend Wrapper and Keys

48JET SecurityMobile Cloud Service OAuth Integration – Login

49JET SecurityMobile Cloud Service OAuth Integration – Login

50JET SecurityMobile Cloud Service OAuth Integration – Network Monitor

51JET REST CallSecure Mobile Cloud Service REST GET Invocation

52JET REST CallSecure Mobile Cloud Service REST PATCH Invocation

53JET REST CallSecure Mobile Cloud Service REST Invocation – Network Monitor

54JET and NotificationsMobile Cloud Service Notifications – Register Push Clients

55JET and NotificationsMobile Cloud Service Notifications – MCS UI

56JET and NotificationsRegister Device for MCS Push

ADD CORDOVA PUSH PLUGIN

cordova plugin add phonegap-plugin-push --variable SENDER_ID="455522940425"

57

Application Container CloudJET in the Cloud.

58Application Container CloudCreate and Package JET Application

Run express YourAppName, Node.js must be installed

GENERATE EMPTY NODE.JS APPLICATION

Navigate to YourAppName folder and run npm install to add dependencies

ADD DEPENDENCIES

Copy JET implementation code into YourAppName public folder

JET IMPLEMENTATION

Add manifest.json file and create zip archiveJET PACKAGING

59Application Container CloudDeploy JET Application

60Application Container CloudDeploy JET Application

61

MAF Mobile Application Framework.

62MAF and MCS IntegrationMAF MCS Utility Application

Execute REST calls from MAF and pass security headers

SIMILAR INTEGRATION PRINCIPLES AS FOR JET HYBRID

More complex application testing and debugging process comparing to JET HybridREQUIRES MOBILE SIMULATOR TO TEST CODE

Example is available for download from OTNMAF MCS UTILITY IS AVAILABLE WITH MCS INTEGRATION EXAMPLE

When there are no JavaScript developers in the teamWHEN TO USE MAF

63

QUESTIONSLearn More.

64

Sample code for JET Hybrid and OAuth

authentication against MCS.

OAuthExample of JET on

Application Container Cloud.

ACCSample code for JET

calling MCS REST service.

MCS RESTSample code for MCS Connector calling ADF

BC REST service.

MCS ConnectorSample code for JET Hybrid to register for

MCS notification.

Notifications

top related