Oracle JET CRUD and ADF BC REST
Transcript of Oracle JET CRUD and ADF BC REST
Oracle JET CRUD and ADF BC REST
Andrejus BaranovskisTechnical Expert
ADF, MAF, JET, BPM, ACM, SOA, WebCenter, Cloud
Small Team of Experts, Focused on Technical Quality
Customers – Global Corporations, Medium and Small Business
Oracle Technical Blog – 10 Years (~800 posts)
Oracle Fusion Middleware Partner Community Award for Outstanding ACM/BPM Contribution 2015, Oracle Fusion Middleware Innovation Award 2010, SOA Partner Community Award for Outstanding Contribution Across the Globe 2010
Company Profile
AgendaOverview
ADF BC REST Functionality
Oracle JET Paging Control
Oracle JET CRUD with ADF BC REST
Oracle JET Business Logic Validation
Oracle JET API and REST Collections
Live Demo
* Bonus: Oracle JET Rendering in ADF
Oracle JET and ADF BC REST Overview
Oracle JET OverviewOracle JET (JavaScript Extension Toolkit) – a modular toolkit based on modern JavaScript, CSS3,
and HTML5 design and development principles. Leverages popular Open-Source frameworks and
adds advanced functionality:
Rich set of UI components
Advanced two-way binding
Advanced Routing System
Smart Resource Management
Validation framework
Open Source
ADF BC REST Overview ADF BC REST provides REST API that allows client application developers to interact with
exposed ADF BC objects
ADF BC REST resources are backed by view object instances
ADF BC REST allows to decide on the set of attributes to expose and actions to make available
Supports standard CRUD operations and custom methods
Data is shaped by REST resource backing view object instance, with the parent-child relationship
intact
Use Case Overview
ADF BC REST Functionality
ADF BC REST CRUD Create, Read, Update and Delete operations are available by default
ADF BC REST CRUD - POST Create with Content-Type as application/vnd.oracle.adf.resourceitem+json
ADF BC REST CRUD - GET Fetching Collection and Filtering with Row Finder or Query with Criteria
ADF BC REST CRUD - PATCH Update with Content-Type as application/vnd.oracle.adf.resourceitem+json
ADF BC REST CRUD - DELETE Delete
ADF BC REST CRUD Paging ADF BC REST supports retrieving collections with row set pagination using a GET method
Example: http://server/demo/rest/1.0/Employees?offset=10&limit=10
Limit – restricts the number of resources returned inside the resource collection
Offset – defines a zero-based index into the collection. The index identifies the starting
position of the resource collection
Set Access Mode = Range Paging in ADF BC VO. Range Size value will be updated on
runtime by Offset parameter
ADF BC REST Master-Detail ADF BC REST supports retrieving nested resources using a GET method
Example: http://server/demo/rest/1.0/Departments/50/child/Employees/120
Employee 120 from Department 50
Example: http://server/demo/rest/11.0/Departments/50?expand=Employees
All Employees from Department 50
ADF BC REST Basic Authentication Based on standard ADF Security. Make sure to specify applied HTTP methods for REST
Servlet
ADF BC REST Advanced Retrieving LOV attribute values in the context of an existing resource item
Querying a resource with a partial get using filtering to restrict attributes
Fetching the resource collection with a row finder
Returning just the data of the resource item or resource collection
Returning the estimated count of resource items in a resource collection
Executing a custom action defined by view object client interface
Overriding the HTTP method to perform an update
Making batch requests
More: http://bit.ly/1X2OoMu
Oracle JET Paging Control
Oracle JET Paging Control Oracle JET table UI component supports paging. Parameter pageSize controls table size
Oracle JET Paging Control Oracle JET paging control definition, based on ADF BC REST URL
Oracle JET Paging Control
Oracle JET CRUD and ADF BC REST
JET Table Row Selection API
JET Table Row Selection API
POST Method – JET Create API
PATCH Method – JET Save API
DELETE Method – JET Destroy API
GET Method – JET Filter customURL
GET Method – JET Filter customURL
Oracle JET Business Logic Validation
ADF BC Validation
Oracle JET Validation
Oracle JET Validation
Oracle JET API and REST Collections
Oracle JET Input Search
Oracle JET Input Search
Oracle JET Master-Detail
Oracle JET and ADF BC REST LOV
Oracle JET and ADF BC REST LOV
Oracle JET and ADF BC REST LOV
Live Demo
Live Demo JET UI table with pagination
ADF BC REST Security
Create, Update, Delete, Filter
Master-Detail
LOV Data
Complex validations
Oracle JET Rendering in ADF
Oracle JET Rendering in ADF
Oracle JET Rendering in ADF Use cases:
Render live data in ADF through JET island
Build public facing scalable sites with JET and back-office systems with ADF
Possible to use JET island in ADF
ADF timeout does not count activity in JET island
Oracle statement: Should not mix ADF and JET, only in special use cases
No official Oracle support
Oracle JET Rendering in ADF Place JET UI code into ADF Fragment
Oracle JET Rendering in ADF ADF Fragment with JET UI code add into main ADF page with simple Include
Oracle JET Rendering in ADF Add JET CSS into main ADF page using af:resource tag
References [1] http://andrejusb.blogspot.lt/2015/12/crud-with-adf-1221-adf-bc-rest.html
[2] http://andrejusb.blogspot.lt/2015/12/range-paging-and-adf-1221-adf-bc-rest.html
[3] http://andrejusb.blogspot.lt/2015/12/oracle-jet-collection-paging-control.html
[4] http://andrejusb.blogspot.lt/2015/12/very-practical-crud-with-jet-and-adf-bc.html
[5] http://andrejusb.blogspot.lt/2015/12/very-practical-crud-with-jet-and-adf-bc_29.html
[6] http://andrejusb.blogspot.lt/2016/01/handling-adf-bc-1221-rest-validation-in.html
[7] http://andrejusb.blogspot.lt/2016/02/basic-authentication-hint-for-adf-bc.html
[8] http://andrejusb.blogspot.lt/2016/03/adf-bc-rest-support-for-list-of-values.html
[9] http://andrejusb.blogspot.lt/2016/05/oracle-jet-input-search-with-adf-bc-rest.html
[10] http://andrejusb.blogspot.lt/2016/05/oracle-jet-master-detail-with-adf-bc.html
Contacts
Andrejus Baranovskis
Blog: http://andrejusb.blogspot.com
Web: http://redsamuraiconsulting.com
Email: [email protected]
Phone: +370 640 14737