Upload
ngodang
View
242
Download
3
Embed Size (px)
Citation preview
<Insert Picture Here>
Hands on Workshop - Oracle ADF 11g
DOAG Berlin/Brandenburg, 5. Mai 2010
Annegret Warnecke
Axel Grosse
Agenda
16.00 Begrüßung + Präliminarien
16.15 Überblick über ADF
17.00 Vertiefung ausgewählter Aspekte
17.45 Pause
18.00 Handson - Teilnehmer führen Übungsaufgaben durch
19.45 offene Fragen und Feedback
20.00 Ende der Veranstaltung
• Gestaltung der Benutzeroberfläche
• Ablaufsteuerung
• Wiederverwendtbarkeit
Agenda
16.00 Begrüßung + Präliminarien
16.15 Überblick über ADF
17.00 Vertiefung ausgewählter Aspekte
17.45 Pause
18.00 Handson - Teilnehmer führen Übungsaufgaben durch
19.45 offene Fragen und Feedback
20.00 Ende der Veranstaltung
• Gestaltung der Benutzeroberfläche
• Ablaufsteuerung
• Wiederverwendtbarkeit
Überblick über ADF
• Oracle Fusion Entwicklungsplattform
Funktionalitäten aus Endbenutzersicht
• Entwicklung mehrfach einsetzbarer Services
• Entwicklung von Rich Internet-Applikationen
• Resumé
Demo
Oracle Fusion Applications
• Oracle EBS, Siebel, Peoplesoft fließen in eine Lösung
mit diversen Modulen ein
• eines der gößten Software Entwicklungsprojekte
weltweit
• Tausende Entwickler
• Entwicklungsprozeß auf mehrere Jahre
Business Drivers
• "Cutting Edge" Benutzeroberfläche
• Agility
• System Integration
• Standards
• Skalierbarkeit, Sicherheit, Portierbarkeit
• Time to market
Business LogicView Data
TaskComplete
AssignTask
Human Workflow
Service
BPEL
ProcessBusiness
Activity
Monitoring
OrchestrationHuman interaction Policy evaluationMonitoring
User InterfaceADF Faces components
Business Services
JSR-227
Data
Binding
Web Services
Oracle Fusion Architecture
DB
Schema
We
bC
en
ter
Events
Rules
Engine
results
facts
Vorteile - Oracle ADF
• Entwicklungsumgebung, die die Entwicklung von Java EE basierten SOA Anwendungen vereinfacht
• komplexe Technologien (Ajax, Flash, Javascript,
DOM, ...) werden gekapselt, Komponenten werden
über Attribute gesteuert
• stellt eine end-to-end Infrastruktur Lösung zur Verfügung• O/R Mapping, persistence, caching, controller, binding, UI
framework
• Unterstützung durch• graphische Editoren, drag and drop, Editoren für Properties,
Prozeßdialoge
Business Services
Data Services
ADF Bindings (JSR 227) Model
Controller
JSF View
Desktop Browser-Based
Struts JSF/ADF Task Flow
OfficeADF Swing
Oracle ADF - The Bigger PictureStandard basiert, effizient, alternative Komponenten
JSP
TopLink
EJB BAMADFBC
PortletsBI EssbaseBPEL Web Services
Java
ADF Faces
Meta
da
ta S
erv
ices (
MD
S)
XML Data Legacy DataRelational Data Packaged Apps
Demonstration
Funktionalitäten aus Endbenutzersicht
Überblick über ADF
• Oracle Fusion Entwicklungsplattform
Funktionalitäten aus Endbenutzersicht
• Entwicklung mehrfach einsetzbarer Services
• Entwicklung von Rich Internet-Applikationen
• Resumé
Demo
Business Services
Data Services
ADF Bindings (JSR 227) Model
Controller
JSF View
Desktop Browser-Based
Struts JSF/ADF Task Flow
OfficeADF Swing
Oracle ADF - The Bigger PictureStandard basiert, effizient, alternative Komponenten
JSP
TopLink
EJB BAMADFBC
PortletsBI EssbaseBPEL Web Services
Java
ADF Faces
Meta
da
ta S
erv
ices (
MD
S)
XML Data Legacy DataRelational Data Packaged Apps
Zielsetzung für Business Services
• Brücke zwischen objektorientierten und relationalen
Strukturen
• Manage CRUD Operations
• Queries/DML
• Einrichtung von Business Rules
• Data validation
• Business logic
• Wiederverwendtbarkeit
• auf Standards basierend
ADF Business Components
Ein Framework, das die Entwicklung von Java EE
Business Services auf Basis von relationalen
Datenbanken vereinfacht. Die Entwicklung erfolgt
deklaratiiv und ist insbesondere für Entwickler mit 4GL
Know How vorteilhaft.
• Vereinfacht den Datenzugriff
• Vereinfacht Validierung und die Verwendung von
Business Logic
• Verwendet SQL basierte Views
• Trennt Daten Views von Business Logic
• Implementiert Best Practices
• Ermöglicht einfache Anpassungen
ADF BC - deklarative Entwicklung
• Query by example any field
• Master/Details coordination
• List of values
• Calculated fields
• Various validations
• Range fetching
• Transaction control
• Locking mechanism
• State management
• All done declaratively without coding !
ADF BC Konzepte
ähnlich wie bei Forms/4GL Entwicklung
• Use SQL Queries to define DB access
• Built in events – similar to triggers in Forms
• Declarative property setting for attribute
• Declarative validation
• Declarative LOV
• Declarative calculated fields
• Built in query by example
• Find/Execute query support
• Reusable property sets
• Transaction management using Commit/Rollback
ADF Business
Mapping auf Java EE
Java
Classes
EJB
Session
Beans
Web
Services
ADF Business
Components
Application Module
JDBCJPA
QueriesTopLink
Queries
ADF Business
Components
View Object
Data
Access
ADF Business
Components
Entity ObjectJava Classes JPA Entities
Persistent
Business
Objects
Business
Services
Grundbausteine von ADF Business
Components
CustomerEO
OrderEO
LineItemEO
OrdVO
CustVO
CustomerOrder
AllOrders
Customer
Application Module
mit View
Object Instances
View
Objects
und
View
Link
Entity Objects
und
Associations
Entity Objects - Persist Data
CustomerEO
Id
Name
Status
Entity
object
Attributes
Database
table
Status List
(Gold Silver Platinum)
Validation
rule
ID
201
NAME
Steve
STATUS
Gold
[email protected] Mike Silver [email protected]
CUSTOMERS
Deklarative Validierung und UI Hints
ADF Application Module
Application Module:
• Enthält ein aktives Datenmodell mit Zugriff auf View Objekt
Instanzen
• Steuert die Verbindung zur Datenbank und hält alle
Änderungnen nach, die Daten in der Datenbank betreffen
• Stellt Methoden zur Verfügung, um mit der Datenbank zu
interagieren
• Elemente können mehrfach verwendet werden
PersonsVO1
OrdersVO1 via PersonOrderVL
OrderAM
ADF Business Components
XML und Java
• ADF BC nutzt XML Metadaten zur Beschreibung der
Objekte
• Es können entsprechende Java Files erzeugt werden
• In Java kann bei Bedarf (ist in vielen Fällen nicht
notwendig) komplexere Logic ergänzt werden, die die
betr. Defaults überschreibt
• JavaFiles können für Entity Objekte, View Objekte
und Application Module erzeugt weden
Überblick über ADF
• Oracle Fusion Entwicklungsplattform
Funktionalitäten aus Endbenutzersicht
• Entwicklung mehrfach einsetzbarer Services
• Entwicklung von Rich Internet-Applikationen
• Resumé
Demo
Business Services
Data Services
ADF Bindings (JSR 227) Model
Controller
JSF View
Desktop Browser-Based
Struts JSF/ADF Task Flow
OfficeADF Swing
Oracle ADF - The Bigger PictureStandard basiert, effizient, alternative Komponenten
JSP
TopLink
EJB BAMADFBC
PortletsBI EssbaseBPEL Web Services
Java
ADF Faces
Meta
da
ta S
erv
ices (
MD
S)
XML Data Legacy DataRelational Data Packaged Apps
Von hier ...
nach hier ...
und hier ...
Was bedeutet JSF?
• JavaServer Faces
• Framework, das die Entwicklung von Web
Oberflächen vereinfacht
• Server seiteige Generierung von Benutzeroberflächen
• Komponenten - nicht mark-up basiert
• Automatisches Event und State Handling
• Verschiedene Clients möglich
• Bei der Entwicklung wurde von vornherein an eine
Toolunterstützng gedacht (RAD)
• Breite Marktunterstützung
• Java EE Standard
Oracle ADF Faces erweitert die
Grundfunktionalitäten von JSF
• ADF Faces Components
• Mehr Komponenten mit breiterem
Funktionsumfang
• Templating
• ADF Task Flow
• Erweitert JSF Controller
• Page fragments
• Page regions
• Reusable flows
ADF Faces Rich Client Komponenten
• 150+ AJAX enabled JavaServer Faces Komponenten
• Drag-and-drop framework
• Dialog and popup framework
• Navigation menu framework
• Partial page rendering
• Advanced data streaming
• Complete JavaScript API
• Skinning
• Accessibility
Skinning - Beispiel 1
Skinning - Beispiel 2
Templates für die Seitengestaltung
Header (with Title)
A
B
Menu Regions
News Portlet
Named Facets
Deklaratives Partial Page Rendering
(PPR)
Partial Page Rendering:
• nur ein Teil der Seite wird neu aufgebaut
• kann deklarativ oder mit Programmierung aufgesetzt
werden
Triggering component:id="zipcode"
autosubmit="true"
Target components:
partialTriggers="zipcode"
ADF Model - Data Binding
• ADF Model
• JSR-227 Data Controls
• Service Oriented Interface
• Implementierung unabhängig von Benutzeroberfläche
• Lose Kopplung zwischen Services
und Anwedung
• Höhere Produktivität
• Drag and Drop Data Binding
• Wiederverwendtbarkeit von
Services
ADF Controller – ADF TaskFlows
• Eine Erweiterung zum JSF Standard Page Flow
• Flows können in Seiten integriert (nur die speziellen
Bereiche innerhalb der betr. Seite verändern sich)
und geschachtelt werden
• Flows sind wiederverwendtbar
• Wiederverwendtbarkeit von Seiten
• Zugriffsschutz auf bounded Flows
• Exception und Transaction Management
• Deklarative back button Steuerung
Bounded Task Flow
Bounded Task Flow Beispiel
editRecord
addCust
createCustomer
Deklarativer Controller
Book-
markable
Declarative TrainsDeclarative
Commit
/ Rollback
Back Button
SupportTransaction
(New or Inherit)Save for Later
ADF Security - End-to-end Security
ADF Desktop Integration
ADF Desktop Integration
ADF Mobile
Überblick über ADF
• Oracle Fusion Entwicklungsplattform
Funktionalitäten aus Endbenutzersicht
• Entwicklung mehrfach einsetzbarer Services
• Entwicklung von Rich Internet-Applikationen
• Resumé
Demo
Resumé
ADF
• deklarative, Komponenten basierte Entwicklung auf
Basis von Standards
• Wiederverwendtbare Elemente in allen Bereichen /
auf allen Ebenen
• reichhaltige Bibliotheken
• Einbindung in ein Entwicklungsframework, das alle
Entwicklungsaspekte abdeckt
• Kernsystem für die Entwicklung von Oracle Fusion
Applications
• Oracle Application Development Framework (ADF)http://www.oracle.com/technology/products/adf
• Oracle JDeveloperhttp://www.oracle.com/technology/products/jdev
• Deutsche ADF Communityhttp://www.oracle.com/de/community/adf
• Oracle ADF Community auf XINGhttps://www.xing.com/net/adfcomm/
• Google Group „ADF Methodology“http://groups.google.com/group/adf-methodology
Weiterführende Informationen
Agenda
16.00 Begrüßung + Präliminarien
16.15 Überblick über ADF
17.00 Vertiefung ausgewählter Aspekte
17.45 Pause
18.00 Handson - Teilnehmer führen Übungsaufgaben durch
19.45 offene Fragen und Feedback
20.00 Ende der Veranstaltung
• Gestaltung der Benutzeroberfläche
• Ablaufsteuerung
• Wiederverwendtbarkeit
Demonstration
Gestaltung der Benutzeroberfläche
Demonstration
Ablaufsteuerung
Agenda
16.00 Begrüßung + Präliminarien
16.15 Überblick über ADF
17.00 Vertiefung ausgewählter Aspekte
17.45 Pause
18.00 Handson - Teilnehmer führen Übungsaufgaben durch
19.45 offene Fragen und Feedback
20.00 Ende der Veranstaltung
• Gestaltung der Benutzeroberfläche
• Ablaufsteuerung
• Wiederverwendtbarkeit
ADF handson WS- Erläuterungen zu den Übungsaufgaben -
ADF handson WS- Erläuterungen zu den Übungsaufgaben -
• Zwischenergebnisse der Übungsaufgaben stehen als .jws zur Verfügung
• wählen Sie aus, welche Aufgabe und in welcher Reihenfolge Sie die Übungen durchführen möchten
• bitte fragen Sie, wenn Sie irgendwo hängen bleiben