1
1
2
<Insert Picture Here>
Accelerated Java EE Development: The Oracle WayDana SingleterryPrincipal Product Manager – Oracle JDeveloper and Oracle ADFhttp://blogs.oracle.com/danaWarning – demo contains small fonts – you might want to sit closer
3
3
How Can We Accelerate Java EE Development?
• Better Development Tools– Visual and declarative– Tools that provide “the .NET experience” for Java– Example : Oracle JDeveloper, Oracle Enterprise Pack for
Eclipse• EJB Modeling, Declarative JPA, Visual JSF, etc…
• Better Development Framework– Connect all the pieces– Abstract complexities of underlying technology– Example : Oracle ADF
4
4
Visual and Declarative Development
• Visual tool = UML– UML has its place for design/documentation stage– Visual design eliminate code and image synchronization
• Sometime a picture is worth a 1000 words (or codelines)• Some developers are more productive with visual
tools• UI design is much easier with visual tools• Declarative – “code generators”, properties,
declarative editors
5
5
Quick Eye Exam - Which One is Clearer
6
6
This?
7
7
Or This?
8
8
This?
9
9
Or This?
10
10
This?
11
11
Or This?
12
12
This?
13
13
Or This?
14
14
Finding it Hard to Decide? Then Don’t!
VisualDialog
Code
15
15
A Better Framework
• Integrated– Across the Java EE layers
• Complete– Addresses more than just Web UI on Java EE
• Flexible• Innovative• Easy to use
16
16
Oracle ADF – A Complete FrameworkWeb Desktop Mobile Office
Database Web Services Legacy Systems Apps Unlimited
17
17
Oracle ADF – A Better Framework
• All the layers of MVC• Multiple UI Channels– Web, Desktop, Mobile Browser, Mobile Native, Excel
• Multiple Backend Services– JPA/EJB, POJO, Web services, XML, more…
• Innovative– Declarative binding, Task flows
• Security• Customization (runtime/designtime)• Integration with SOA, Portal• Integrated visual and declarative development tool
18
18
BusinessServices
DataServices
Model
Controller
JSFJSF View
Desktop Browser-Based
StrutsStruts
OfficeOfficeADFADFSwingSwing
Oracle ADF - The Bigger Picture
JSPJSP
EJBEJB BAMBAMADFbcADFbc PortletsPortletsBIBIBPELBPELWeb ServicesWeb ServicesJavaJava
Met
adat
a S
ervi
ces
(MD
S)
Met
adat
a S
ervi
ces
(MD
S) MobileMobile
Database Web Services Legacy Systems Apps Unlimited
JSFJSFADF ControllerADF Controller
ADF BindingADF Binding
ADF FacesADF Faces
19
19
ADF Faces Rich Client Components
• Over 150 components• Ajax enabled• Pluggable look and feel• Accessibility & internationalization• The usual components plus:– Charts, gantt, geo-map, pivot, calendars, coverflow
• Built in advanced functionality:– Drag and drop framework– Dialog and pop-up framework– “Active Data” - Dashboards / push updates (comet)– Templating and declarative components
20
20
MICROS
21
21
Cuyahoga County GIS
22
22
Fusion ApplicationsHCM
23
23
Fusion ApplicationsProjects
24
24
Fusion ApplicationsProcurement
25
25
• ADF Model– JSR-227 Data Controls
• Service Oriented Interface– Abstract implementation from clients– Loose coupling between services
and application• More Reusability– Discover and share services
• More Productivity– Drag and drop data binding– Declarative properties setting
ADF Model - Data Binding
26
26
EJB Session Facade/JPA Data Control
• Master/Detail• Common Operations• Sort and filter result set• Range fetching• Query Component Support• Declarative Validation• UI Hints
27
27
<Insert Picture Here>
Demo
28
28
ADF 11g Built-in Data Controls
• Java Class• EJB• Web Service• URL (XML or CSV)• Place Holder• ADF Business Components• Essbase• Add your own
29
29
ADF Controller
• An extension to the JSF page flow engine• From page flow to process flow
– Include methods, decision points and pages
• Diagram your process• Build reusable task flows
– In other flows, inside other pages
• Advance functionality in a declarative way– Transaction, initialization, Back button
30
30
Task Flows - Reusable Page Flows
Bounded Task Flow
Task Flow
Pageregion
31
31
ADF Controller – Other things
• New memory scopes– Pageflow, View
• Initializer / Finalizer• Exception handling• Back button handling• Bookmarked JSF with parameters
32
32
<Insert Picture Here>
Demo
33
33
Oracle ADF Mobile
• Two approaches:– ADF Mobile Browser– ADF Mobile Client
• Extend your existingapplication• Reuse business services• Same development
concepts
34
34
ADF Desktop Integration
• Excel Spreadsheetsconnected to JavaBusiness servicesthrough ADF binding• Familiar working
environment• Connected or
disconnected• Leverage business
services and securityfrom your application
35
35
1. Base application deployed
2. Onsite branding
3. LOB branding
4. Userpersonalization
and more…
Key Capabilities:• Common metadata store• Set up personalized content and
services for users• Stored as layers on top of base
applicationBenefits:• Insulates users from updates and
patches• Used throughout Oracle stack –
business processes, businessintelligence and applications
MDS - Layered Customizations
36
36
ADF Security
• Authentication and authorization• End to end security– Business services operations– Task flows– UI components
• Externalized security administration• Sits on top of Oracle Platform Security Services– Pluggable providers– Adaptive access management
37
37
Learn More Online – JDeveloper and ADF on OTN
• http://oracle.com/technology/jdev
• Tutorials• Demos• Books• Discussion Forum• How-to’s• Samples• More
38
38
Related Oracle Press Books
• Quick Start Guide to Oracle Fusion Development• Oracle JDeveloper 11g Handbook• Oracle Fusion Developer Guide
39
39
The preceding is intended to outline our generalproduct direction. It is intended for informationpurposes only, and may not be incorporated into anycontract. It is not a commitment to deliver anymaterial, code, or functionality, and should not berelied upon in making purchasing decisions.The development, release, and timing of anyfeatures or functionality described for Oracle’sproducts remains at the sole discretion of Oracle.