<Insert Picture Here> Generierung von ADF-Applikationen aus Metadaten des Oracle Designer Jürgen Menge Oracle Deutschland Oracle Designer - Metadaten • Investment vieler Anwender liegt in den Metadaten des Oracle Designer (Repository) • Funktions- und Prozessbeschreibungen • Datenmodell und Datenbank-Design • Applikations-Design • über den Designer hinausgehende Nutzung der Metadaten • Export in Richtung anderer Werkzeuge und IDEs • z.B.: Prozess-Definitionen in Richtung Oracle BPA Suite (ARIS) • direktes Lesen der Metadaten durch andere Werkzeuge und IDEs • Oracle Designer BC4J Generator (nicht mehr verfügbar) • Oracle JHeadstart Designer Forms-Migrator Wie soll Ihre künftige Anwendungsentwicklung aussehen ? Forms ..., 6.0, 6i Migrate Client Server U p g r a d e Forms 10g, 11g Web Integrate ADF/J2EE SOA JHS Forms-Migrator: der Ausgangspunkt • Konzentration auf Applikationen (unter Berücksichtigung der verwendeten Tabellen/Views) • Moduldefinitionen im Oracle Designer Repository • Forms-Module wurden mit dem Oracle Designer entwickelt oder • Forms-Module müssen per Reverse Engineering in das Repository geladen werden • Oracle JHeadstart Designer Forms-Migrator • Bestandteil von Oracle JHeadstart (JHS) • als Plug-In im Oracle JDeveloper verfügbar JHS Forms-Migrator: das Ziel • Erstellung lauffähiger und wartbarer J2EE-Applikationen auf Basis von Oracle ADF • Was wird übernommen • die Grundstruktur der Applikationen (Master-Detail, LOVs u.v.m.) • siehe JHeadstart User Guide (Kapitel 13.) • Was wird nicht übernommen • spezifische Geschäftslogik (PL/SQL) • Vorteile • Entwicklung der J2EE/ADF-Applikation setzt auf einem klar strukturierten Fundament auf Oracle Application Development Framework (ADF) • Reduziert die Komplexität der JEE-Entwicklung • • • Steigert die Produktivität der Entwicklung • • • • Weniger Programmierung durch Wiederverwendung von Code Konzentration auf die Applikation und nicht auf technische Details der Implementierung Konsolidierung und Weiterentwicklung bestehender Frameworks Umsetzung von JEE Best Practices • • • Grafische und deklarative Entwicklung Abstraktion auf Basis von JEE Implementierung von J2EE Design Patterns MVC-Architektur (Model/View/Controller) Flexible und erweiterbare Umgebung durch die Auswahl unterschiedlicher Technologien und Entwicklungsstile Architektur – Oracle ADF Rich Clients Web and Wireless View Controller Controller Model Business Services Model (JSR 227) Architektur – Oracle ADF ADF Swing JSP JSF ADF Faces Metadata Services (MDS) Struts ADF Bindings Controller JSF Mobile Bindings Portlet Bindings Java Classes TopLink Data Services JDBC Relational Data ADF Business Components Web Services Model (JSR 227) ADF Data Control EJB View Portlets JSR-168 WSRP JCA WS XML XML Data Legacy Data Packaged Apps Business Services ADF-Technologien für Forms-Entwickler • • • • Entwicklungskonzept, das Forms-Entwicklern vertraut ist Methoden des Business Service, die Forms-Triggern ähnlich sind Grafische und deklarative Entwicklung mit JavaServer Faces (JSF) Technologien für das Oracle Fusion-Projekt JSF ADF Data Control ADF Business Components Oracle JHeadstart • • RAD-Framework zur Beschleunigung der ADF-Entwicklung Entwicklung durch Oracle Consulting Niederlande • Merkmale • • • • • • Deklarative Entwicklung iteratives Prototyping Anwendungs-Generator als Plug-in im JDeveloper Montage von Komponenten, keine Generierung von Java-Code ! Generierung lauffähiger J2EE-Applikationen auf Basis von ADF ermöglicht die Migration von Oracle Forms-Anwendungen nach J2EE/ADF (über den Oracle Designer) Schritte bei der Migration (1) 1. Vorbereiten der Module im Oracle Designer • Check-Scripte (siehe JHeadstart User Guide) 2. Einrichten der Applikation im JDeveloper • • ⇒ ⇒ Projektstruktur einrichten Oracle JHeadstart für das ControllerView-Projekt aktivieren Hinzufügen von Bibliotheken Anpassen der Konfiguration 3. Aufruf des JHeadstart Designer-Forms Migrator • • ⇒ ⇒ Aufbau einer Connection zum Designer Repository Lesen der Modul-Informationen aus dem Repository Generieren der ADF Business Components Generieren des JHS Application Definition File Schritte bei der Migration (2) 4. Nachbearbeitung der Applikation im JDeveloper ⇒ Implementierung von Geschäftslogik (Client, Mid-Tier, DB) 5. Aufruf des JHeadstart Application Generator (JAG) ⇒ Generieren der ADF Faces Pages ⇒ Generieren der Faces Config XML-Dateien ⇒ Generieren der Data Bindings (Page Definition XML-Dateien) 6. Testen der generierten Applikation 7. Anpassen und erneutes Generieren … Application Application Definition Definition Oracle Designer Generierungsprozess JSF JSP JSP JSF ADF Faces Faces ADF JSF JSF View Controller ADF Model Model ADF Data Bindings Bindings Data Model Data Controls Controls Data JHeadstart Designer Generator ADF ADF ADF ADF Business Business Business Business Components Components Components Components Business Services Application Application Definition Definition Oracle Designer Generation Process JSF JSP JSP JSF ADF Faces Faces ADF JSF JSF View Controller ADF Model Model ADF Data Bindings Bindings Data Model Data Controls Controls Data JHeadstart Designer Generator ADF ADF ADF ADF Business Business Business Business Components Components Components Components Business Services Application Application Definition Definition Generator Generator Templates Templates Generierungsprozess JSF JSP JSF JSF JSP JSP JSF JSP ADF Faces ADF ADF Faces Faces ADF Faces Oracle Designer JSF JSF JSF JSF JHeadstart Application Generator JHeadstart Designer Generator View Controller ADF Model ADF ADF Model Model ADF Model Data Bindings Data Data Bindings Bindings Data Bindings Model Data Controls Data Data Controls Controls Data Controls ADF ADF ADF ADF Business Business Business Business Components Components Components Components Business Services Beispiel: Oracle Forms-Maske Beispiel: generierte JHeadstart-Seite Beispiel: JHeadstart-Seite für ADF 11g ADF Business Components J2EE-Framework zur Erstellung von Präsentation Geschäftskomponenten Kapselung der Geschäftslogik Auftrag Kunde Persistenz-Schicht VOs Wichtiger Auftrag Implementierung von J2EE-Design EOs Pattern Auftrag Kunde Universeller Clientzugriff auf die BC4J gleiche Logik Auftrag Kunde Bereitstellung der Infrastruktur Entwickler konzentriert sich auf Geschäftslogik JHS Forms-Designer Migrator (1) Oracle Forms/Designer ADF BC Objects Tables/Views Entity Objects (EO) Columns Attributes Constraints Entity Constraints Foreign Keys Associations Domains Domains Domain Usage Validierungsregel für EO Domains (Allowable Values) Domains (Allowable Values) siehe Oracle JHeadstart Designer-Forms Migrator Reference JHS Forms-Designer Migrator (2) Oracle Forms/Designer ADF BC Objects Module (nur Type Default) Application Module (AM) Satz von Modulen Application Modules (Nested) Module Components View Objects (VO) Key-based Link View Link Data-bound Item VO Attribute Data-unbound Item VO Attribute List of Values (LOV) View Objects (VO) siehe Oracle JHeadstart Designer-Forms Migrator Reference JHS Forms-Designer Migrator (3) Oracle Forms/Designer JHS Application Definition File Satz von Modulen Application Definition (Service) Module Hierarchie von Groups Module Components Groups (Main-G., Sub-G.) Item Group Region Items Items Domains Domains List of Values (LOV) Groups D E M O N S T R A T I O N JHS Designer-Forms Migrator Zusammenfassung • JHS Designer Forms-Migrator migriert Metadaten aus dem Designer Repository in Richtung Oracle ADF • Produktivitätsgewinn bei einer großen Zahl von einfachen Forms-Modulen (CRUD-Module) • Unterstützung für Rapid Prototyping durch schnelle Erstellung einer ersten lauffähigen Applikation • Arbeitsweise von JHeadstart ist Designer/Forms-Entwicklern vertraut • deklarative Arbeitsweise • Verwendung ähnlicher Bezeichnungen wie im Oracle Designer • Konzept der Anwendungs-Generierung Weiterführende Informationen • Oracle Designer www.oracle.com/technology/products/designer/index.html • Oracle JHeadstart www.oracle.com/technology/products/jheadstart/index.html • Oracle JHeadstart User Guide download.oracle.com/consulting/jhsdevguide1013.pdf • White Paper “Business Rules in ADF BC” www.oracle.com/technology/products/jdev/collateral/papers/10131/businessrulesinadfbctechnicalwp.pdf