Offline Web with Oracle JET

30
1 Offline Web with Oracle JET Florin Marcus Red Samurai Consulting

Transcript of Offline Web with Oracle JET

Page 1: Offline Web with Oracle JET

1

Offline Web with Oracle JET

Florin Marcus Red Samurai Consulting

Page 2: Offline Web with Oracle JET

2AgendaOffline Web with Oracle JET

Caching 01

Database in Browser: IndexedDB

02

Oracle JET 03

Offline JET Demo 04

Page 3: Offline Web with Oracle JET

3

3

Data Caching on Web

Caching as

Temporary storage for dynamic content.

Offline Web with Oracle JET

Page 4: Offline Web with Oracle JET

4

4

Caching: a HTTP problem

page A page B

Typical example: a Multi Step Form

Hitting 'Next' should cache Answer 1 up until 'Done' is pressed.

Page 5: Offline Web with Oracle JET

5

In Browser● Cookies (limited to 4096 bytes)

On Server• HTTP Session

In hidden fields or query strings(passed back and forth between requests)

• 5

Caching options in HTML 4

Page 6: Offline Web with Oracle JET

6

Browser Cache

● HTML Session Storage and Local Storage – 10 MB limit

● Indexed DB– A builtin database in a browser– Up to 6% quota of your disk

6

New Types of Caching in HTML 5

Page 7: Offline Web with Oracle JET

7

7

W3C Recommendation (January 2015)

Object Database

Transactional

Asynchronous API

IndexedDB – Database In Browser

Page 8: Offline Web with Oracle JET

8

8

IndexedDB Concepts

Page 9: Offline Web with Oracle JET

9

9

IndexedDB Performance

How fast a browser database can be?

Page 10: Offline Web with Oracle JET

10

10

IndexedDB Performance

Page 11: Offline Web with Oracle JET

11

11

IndexedDB - Security Vulnerabilities

Same-origin Policy

Cross-Site Scripting attacks

Encrypting data before storing

Delete data on session timeout

Page 12: Offline Web with Oracle JET

12

Are Component-Based Web Frameworks Becoming Obsolete?

Page 13: Offline Web with Oracle JET

13Server-based Web Components

Web Components are rendered on the server.

They have a HTML representation and possibly a client behavior (javascript).

Input values are cached on the server

Page 14: Offline Web with Oracle JET

14Client-based Web Components

Web Components run in browser only.

Components consume REST to communicate with the server.

Input values are cached on the client.

Server's middle layer is much simplified

Page 15: Offline Web with Oracle JET

15

Demo Time

15

Page 16: Offline Web with Oracle JET

16

16

JET Architecture

Web Server is used for initial load of the application.

Once Oracle JET loaded by browser, it will communicate with the REST server alone

Page 17: Offline Web with Oracle JET

17JET Offline Lifecycle (Step 1)

Page 18: Offline Web with Oracle JET

18JET Offline Lifecycle (Step 2)

Page 19: Offline Web with Oracle JET

19JET Offline Lifecycle (Step 3)

Page 20: Offline Web with Oracle JET

20JET Offline Lifecycle (Step 4)

Page 21: Offline Web with Oracle JET

21JET Offline Lifecycle (Step 5)

Page 22: Offline Web with Oracle JET

22JET Offline Lifecycle (Step 6)

Page 23: Offline Web with Oracle JET

23JET Integration with ADF or APEX

Page 24: Offline Web with Oracle JET

24Indexed DB - Conclusion

Think of IndexedDB as caching, not offline support

Page 25: Offline Web with Oracle JET

25

25

Oracle JET - Open Source Libraries

Page 26: Offline Web with Oracle JET

26

What's Next For ADF and APEX?

Page 27: Offline Web with Oracle JET

27

What's Next For ADF and APEX?

Support for JET Composite Components in ADF

Page 28: Offline Web with Oracle JET

28

QUESTIONS

Page 29: Offline Web with Oracle JET

29

ReferencesOracle JEThttp://www.oracle.com/webfolder/technetwork/jet/index.html

IndexedDBhttp://www.w3.org/TR/IndexedDB

Consuming secure REST web services from Oracle JEThttp://andrejusb.blogspot.co.uk/2016/10/oracle-jet-and-adf-bc-rest-security.html

Composite JET Componentshttp://andrejusb.blogspot.co.uk/2016/11/oracle-jet-composite-component-and-adf.html

Page 30: Offline Web with Oracle JET

30About 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