Oracle ADF

Framework für Java
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 29. Juli 2010 um 09:50 Uhr durch Sporti1703 (Diskussion | Beiträge) (ADF Faces). Sie kann sich erheblich von der aktuellen Version unterscheiden.

ADF

Die Abkürzung ADF steht für Application Development Framework. Es ist auch unter der Bezeichnung Oracle ADF bekannt. Oracle ADF stellt ein kommerzielles J2EE Framework dar, dass sich zum Ziel gesetzt hat auf einfache, visuelle, deklarative und effiziente Art und Weise Java Enterprise Anwendungen zu entwickeln. ADF bietet mit einem Spektrum an Komponenten und einem Zusammenschluss an Frameworks (wie z.B. TopLink [1], JSF [2] und Struts [3]) einen ganzheitlichen Ansatz auf Basis des Modell-View-Controller (MVC) Prinzips. Durch den Einsatz von bewährten Designmustern, metadatengesteuerten Komponenten und visuellen Tools wird Rapid Application Development unterstützt.

Eigenschaften

Die Grundlage dieses Frameworks basiert auf einer strikten Trennung zwischen Daten (Modell), die durch die Geschäftslogik gekapselt werden und grafischer Darstellungsschicht (View) sowie der zur Darstellungsschicht gehörenden Steuerungseinheit (Controller). Ein wichtiger zentraler Bestandteil stellt das Binding (JSR-227) dar. In der nachfolgenden Abbildung ist die Architektur im Überblick dargestellt:

 

Zu erkennen sind 4 Schichten (Layers), die kurz von unten nach oben erläutert werden:

  • Business Services Layer - beinhaltet die Zugriffsschicht auf die Daten aus verschiedenen Quellen und die eigentliche Geschäftslogik (Data Services)
  • Model Layer - stellt eine Abstraktionsschicht auf den Business Services Layer dar, um den darüberliegenden Schichten (View, Controller) in konsistenter Weise mit den verschiedenen Business Services die Arbeit zu ermöglichen.
  • Controller Layer - ist die Steuerungseinheit für die Navigation innerhalb der Webanwendung
  • View Layer - beschreibt die Nutzeroberfläche der Anwendung (Webclient, Fat Client oder Mobile Client)

Das Binding zwischen Data Services von View- bzw. Controller Layer erfolgt im Model Layer. Grundsätzlich besteht es aus zwei Komponenten:

  • Data Controls
  • Data Bindings

die durch Metadaten beschrieben werden. Data Controls abstrahieren die Implementierungsdetails des Business Services. Wohingegen die Data Bindings die Methoden des Data Controls sowie Attribute in den UI Komponenten exponieren, um eine saubere Trennung zwischen View und Controller sicherzustellen. Die Metadaten Architektur schafft für den Entwickler eine einheitliche Vorgehensweise jeglichen Business Services mit der View und Controller Layer zu verbinden. Der JSR-227 (A Standard Data Binding & Data Access Facility for J2EE) hat sich die Standardisierung des Data Binding zum Ziel gesetzt.

Komponenten

ADF Faces

  • Vorschlag: eigenen Artikel schreiben und hier nur verlinken

Benutzer:Sporti1703/ADF Faces

ADF Mobile und ADF Mobile Client

  • Vorschlag: eigenen Artikel schreiben und hier nur verlinken

ADF Mobile

ADF Taskflow

  • Vorschlag: eigenen Artikel schreiben und hier nur verlinken

ADF Taskflow

ADF Model

  • Vorschlag: eigenen Artikel schreiben und hier nur verlinken

ADF Model

ADF Business Services

  • Vorschlag: eigenen Artikel schreiben und hier nur verlinken

ADF BC

ADF Metadata Services

  • Vorschlag: eigenen Artikel schreiben und hier nur verlinken

ADF Security

  • Vorschlag: eigenen Artikel schreiben und hier nur verlinken

Geschichte

Einige Komponten von ADF wurden von Oracle bereits 1999 veröffentlicht, wie z.B. ADF Business Components — damals als "JBO" und später als "BC4J" ("Business Components for Java") bekannt. Das aktuelle generische Model/Binding Layer in der ADF Architektur wurde mit dem JDeveloper 9.0.5 miteingeführt. Im Juni 2006 spendete Oracle einen großen Teil der ADF Faces Komponentenbibliothek (Oracle's JSF Implementierung mit über 100 Komponenten) dem OpenSource Projekt Apache Trinidad.

Lizensierung

Details zur Lizensierung sind auf OTN (Oracle Technology Network) detailliert beschrieben.

Literatur

  1. Oracle Fusion Developer Guide, von Frank Nimphius und Lynn Munsinger [4]
  2. Oracle JDeveloper 11g Handbook - A Guide to Oracle Fusion Web Development, von Duncan Mills, Peter Koletzke , Avrom Roy-Faderman [5]