Upload
lucas-jellema
View
1.983
Download
0
Tags:
Embed Size (px)
DESCRIPTION
ADF is the strategic application development framework for Oracle, a core element in Fusion Middleware. ADF can be used to create large scale, enterprise applications. It can be used to create entirely license free applications. It can be used to create cloud applications and also applications that can be used from all kinds of mobile devices. This presentation shows through a large number of screenshots how a simple demo application can be created - which has a panelSplitter, panelTabbed, a table, a horizontal barchart, a pie chart and a popup with a synchronized details table.
Citation preview
Lucas Jellema
OUGF Harmony 2014 – 4-5 June 2014 – Finland
ADF in action – getting (re)acquainted with Oracle’s premier application development framework
2
ADF BC
• Expose tables, views and custom SQL queries as Java Services• Declarative• Productive• Very similar to Forms blocks• Features
– Optimistic & pessimistic locking– Transaction Management– Pooling of database session connections– Caching of queried and manipulated data– Validation of data manipulations– Enrichment of data fetched from the database– Web session (state) management– Oracle SQL comes naturally (sequence, return after DML, joins, BLOBs, PL/SQL,..)– Master/detail coordination
ADF BC
3
Demo
• HRService from tables in HR schema– Add custom SQL with salary aggregation per department– Add business rules
• Run the ADF BC Service Tester• Expose HRService as a SOAP/XML Web Service• Invoke HRWebService from Soap UI
4
Create new ADF Fusion Web Application
5
Define Application Name – then Finish
6
Create Business Components from Tables & Views in DB
7
Select Tables (& Views) in DB – set name for Entity Objects
8
Derive ViewObjects from EntityObjects
9
Define the Business Service Name and Finish
10
Define Business Rule for Employee EntityObject
11
Business Rule: Salary should not be under 1200
12
Create Custom SQL based ViewObject – to fuel Charts
13
Aggregating SQL query to base the ViewObject on
14
Define Key attribute and Associated with HrService
15
Data Model in HrService
16
Run the HrService – to test the data model, queries and rule
17
Department => Employees ViewLink (master-detail synch)
18
Testing the Business Rule for Salary values
19
Testing the custom SQL based ViewObject
20
Define a Web Service on top of the business service HrService
21
Define the operations to expose in the Web Service
22
ADF BC Application Moduleexposed as Web Service
23
Business Service: HRService
ADF BC
Departments
Employees
SalaryPerDepart
mentVW
DepartmentsVw EmployeesVw
EmployeeDepartmentEntity Objects
View Objects
24
Business Service: HRServiceExposes an ADF Model Data Control
ADF BC
DepartmentsEmployees
SalaryPerDepart
mentVW
DepartmentsVw EmployeesVw
EmployeeDepartment
25
Data Controls – abstract business service
26
Demo objective
• Screenshot of page to create• Based on Departments & Employees tables
– And custom SQL query for aggregation
• Show table with all departments• Show bar chart with top X departments in terms of salary sum (or avg
salary)• Popup per department with table with employees
– Move and resize columns– Sort and filter records
27
Demo objective
28
Create new Web Page(ADF Faces)
29
Select new page style
30
Add PanelHeader to page
31
Add PanelSplitter to page
32
Create a data bound table of all departments
33
Add PanelTabbed
34
Add SalaryPerDepartmentVw as Data Bound Chart
35
Select chart type – then configure selected chart
36
Add Data Bound Pie Chart
37
38
39
40
Demo steps
• Add popup• Add button and listener to show popup• Drag panelwindow• Drag Employees table - sort, filter, resize and move columns
• Show results
41
Add a popup component to the page
42
Add a PanelWindow inside the popup component
43
Add a data bound table to the popup (with employee details)
44
Add the ShowPopupBehavior: show popup on hover over department id
45
Running the application with Employee details popup
46
ADF BC Validation is handled in User Interface
47
Some table features:Filter records on column expressions
48
Some table features:Move and Resize columns
49
Some table features:Hide/Show columns
50
Some table features:Detach table (to full page)
51
Detached table – full page view
52
Prepared advanced demo
• Login & Log out• Personalization: move, resize and hide columns• Skin Switcher• Language switcher• Commit – Validation/Error handling