 |
Zurück
Weiter
Die Aufgaben der AppLogics
Jedes AppLogic muß zwei Aufgaben erfüllen: Es muß
ein Teil der Geschäftslogik implementieren und den Aufruf einer
Methode an einem entfernten Objekt auf dem bank Server
ausführen. Nachdem ein Benutzer einen Namen eingegeben hat in
der "New Account Form" und den OK-Knopf gedrückt hat
(Grafik 4), muß das
aufgerufene AppLogic die newAccount(.) Methode am entfernten
bank Objekt aufrufen. Diese Methode gibt ein account
Objekt zurück, dessen Name und Kontostand in der nächsten
HTML-Seite angezeigt wird (Grafik
5). Jedes AppLogic ist verantwortlich für einen Hauptaufruf
an einem Objekt, und der Name des AppLogics soll diesen Hauptaufruf
benennen. Im Fall des Öffnens eines neuen Kontos, muß das
AppLogic die newAccount(.) Methode an einem bank Objekt
aufrufen (Hauptaufruf), aber auch die Methoden get_name() und
get_balance() am zurückgegebenen account Objekt.
Da nun das Öffnen eines neuen Kontos die Hauptaufgabe des
AppLogics ist, und das Objekt, an dem diese Methode aufgerufen wird,
ein bank Objekt ist, heißt dieses AppLogic
bankNewAccountAppLogic.
Jeder CORBA Client muß sich mindestens einmal an ein Objekt
im Server binden, um einen ersten Aufruf an einem entfernten Objekt
machen zu können. Neben den bereits im vorigen Abschnitt
genannten AppLogics benötigen wir daher noch ein weiteres, das
sich an ein bank Objekt auf dem Server bindet, und nennen es
bankBindAppLogic.
Für diese Applikation benötigen wir noch ein AppLogic,
das keine Aufrufe an einem entfernten Objekt tätigt, wohl aber
bereits vorhandene Objektreferenzen an ein nächstes AppLogic
weitergibt und eine HTML-Seite an den Browser zurückgibt. Es ist
gleichzusetzen mit einem Link in einer HTML-Seite, mit dem
Unterschied, daß hierbei vorhandene Objektreferenzen
weitergegeben werden. Wir nennen dieses AppLogic
transferAppLogic.
Grafik 6 zeigt den Kontrollfluß der
Bankapplikation.

Grafik 6: Kontrollfluß der Bankapplikation
(Quelle: Präsentation von Prof. Dr. Schmauch)
Ein weiteres AppLogic, das für diese Anwendung benötigt
wird, ist das removeAccountFromSessionAppLogic, das die
Referenz auf ein account Objekt aus der Session löscht,
um sicherzustellen, daß der logische Fluß in der
Applikation eingehalten wird.
Jedes AppLogic, das Methoden an einem entfernten Objekt aufruft,
tut dies an einem Proxy-Objekt von einem entfernten CORBA-Objekt. Um
zu verhindern, daß jedes AppLogic diese Referenz nach dem
Abarbeiten des AppLogics wieder verliert, haben wir eine Strategie
entwickelt, diese Referenzen zu verwalten.
Zurück
Weiter, Autor:
Christian Ey,
http://www.inweb.de/chetan
|
 |