Praktische Anwendungsentwicklung mit Oracle Forms

von: Perry Pakull, Stefan Jüssen, Walter Müller

Carl Hanser Fachbuchverlag, 2007

ISBN: 9783446413290 , 324 Seiten

Format: PDF, OL

Kopierschutz: Wasserzeichen

Windows PC,Mac OSX geeignet für alle DRM-fähigen eReader Apple iPad, Android Tablet PC's Online-Lesen für: Windows PC,Mac OSX,Linux

Preis: 31,99 EUR

Mehr zum Inhalt

Praktische Anwendungsentwicklung mit Oracle Forms


 

8 Integration (S. 169-170)

Java heißt das Zauberwort bei der Integration zusätzlicher Funktionen in Oracle Forms. Sie können damit nicht nur Ihrer Forms-Applikation ein neues Gesicht verleihen, sondern auch Funktionen auf dem Client oder Server integrieren, die so in Oracle Forms nicht vorhanden sind. Daraus entstehen nicht nur Vorteile in Bezug auf funktionale Erweiterungen, sondern auch Integrationsmöglichkeiten mit Applikationen, die auf anderen Technologien basieren. Fragen, die dieses Kapitel beantwortet:

Warum Code auf dem Client ausführen?
Wie implementiert man Client-Zugriffe in der neuen Architektur?
Wie importiert man Java-Klassen, die auf dem Application Server ausgeführt werden?
Was ist bei der Integration von Java-Klassen auf dem Application Server zu beachten?
Welche anderen Integrationsmöglichkeiten sind für Oracle Forms möglich?

8.1 Client-Integration mit Java

In Kapitel 2 haben wir den Forms Client als generischen Java-Client charakterisiert, in dem das Java-Applet als Rendering Engine die Darstellung der Benutzeroberfläche für jede Forms-Applikation übernimmt. Es besteht zunächst kein Bedarf, die Darstellung oder das Verhalten des Forms Clients durch eigene Komponenten zu erweitern. Das Java-Applet ist allerdings so konzipiert, dass Erweiterungen möglich sind. Es gibt verschiedene Gründe, diese Erweiterungsmöglichkeiten auch zu nutzen:

Die Kontrollelemente der Benutzeroberfläche wirken auf den ersten Blick etwas trist. Hier entsteht der Bedarf, die Darstellung zu verbessern, indem zum Beispiel eine Schaltfläche nicht nur Text enthält, sondern durch ein intuitives Icon ergänzt wird. Die Anzeige von Bildern und Grafiken auf dem Forms Client ist möglich, aber eine echte Bereicherung sind Verweis-sensitive Grafiken, auf denen der Anwender mit der Maus Elemente markieren und auswählen kann.

Der Zugriff auf das Betriebssystem des Forms Clients ist eingeschränkt, kann aber durch JavaBeans erweitert werden, um beispielsweise den Transfer von Dateien auf den Application Server zu realisieren. Die WebUtil-Bibliothek bietet zusammen mit JACOB bereits einen Ersatz für die Client-Funktionalitäten, die bedingt durch die neue Architektur angepasst werden müssen.

8.1.1 Pluggable Java Components

Die Kontrollelemente der grafischen Benutzeroberfläche von Oracle Forms – also die im Forms Builder definierten Text-Items, List-Items und Buttons – haben eine entsprechende Implementierung in Java. Diese Java-Implementierungen verwenden das so genannte „Java Lightweight Component Model" und haben keine Abhängigkeiten zum ausführenden Forms Client, d.h., die Komponenten sind wirklich handgemalt und basieren nicht auf einer speziellen Implementierung durch das Fenstersystem des Betriebssystems. Das Java- Applet des Forms Clients ist plattformunabhängig – es gibt also keine speziellen Implementierungen für Windows, Mac OS oder X11.

Die Java-Implementierungen der Kontrollelemente wurden so aufgebaut, dass sie durch eigene Java-Klassen erweitert werden können. Solche Erweiterungen werden dann als Pluggable Java Components bezeichnet. Technisch gesehen bedeutet dies, dass alle Java- Klassen das Interface oracle.forms.ui.IView implementieren. Dieses IView-Interface ist eine Schnittstelle, die sich in die interne Kommunikationsschicht zwischen dem Forms Client und dem Forms Runtime-Prozess einfügt. Die auf dem Forms Client ausgeführten Kontrollelemente müssen dieses Interface implementieren. Das Interface enthält eine Handler- und eine View-Klasse. Die Handler-Klasse kontrolliert die visuelle Darstellung der Komponente, überwacht den Dateninhalt, registriert sich für die Events der View- Klasse und ist zuständig für die Kommunikation mit dem Forms Runtime-Prozess. Die View-Klasse übernimmt die visuelle Darstellung der Daten und behandelt die Eingaben des Benutzers bzw. meldet Veränderungen an die Handler-Klasse.