Events dienen im Javabean-Konzept dazu, Javabeans miteinander zu
verbinden.
Es wird eine Java-JDK Version > 1.2 und ein Javabeansystem BDK1.1
vorausgesetzt.
In diesen wird das Event1.1-Modell von Java verwendet. Hierbei registrieren
sich die empfangsbereiten Objekte bei den Event-versendenden Objekten. Diese
senden nur an die registrierten Objekte, die den Event mit einer zu dessen
Interface (s. EventListener) passenden Methode empfangen.
Der Java-Event-Mechanismus (V1.1) beruht auf Invocation, d.h. die dem Event
zugewiesene Methode des Targetbeans wird wie eine Subroutine aufgerufen:
nach Verlassen der Subroutine kehrt der Kontrollfluss zur Event-feuernden
Javabean zurück (siehe Abbildung ).
Es handelt sich somit um ein synchrones Modell:
der Kontrollfluss (mainthread) kommt nach Ausführung der
durchlaufenen Methoden zum Startpunkt (StartButton) zurück.
Javabeans können zur parallelen Bearbeitung von Aufgaben auch zusätzliche
Subthreads erzeugen.
Java stellt Standardevents zur Verfügung, z.B. den MousePressedEvent und
den ActionEvent. Der MousePressedEvent dient zum Start einer Anwendung durch
Klick auf einen Button, evtl. auch zum Stop. Für die Verbindung der übrigen
Javabeans in einer Anwendung eignet sich der ActionEvent am besten. In
besonderen Fällen kann der PropertyEvent verwendet werden.
Der Baustein-Entwickler kann auch weitere Events
implementieren, die vom java/util/EventObject erben. Parameter sollen
aber laut
Javabean-Spezifikation nur in besonderen Fällen
übergeben werden ([#!jb101!#], 6.4.1).
Potentielle Targetbeans registrieren sich als EventListener in der
- addEventListener-Methode der Event-Source bzw.
melden sich durch Aufruf der
-removeEventListener-Methode
wieder
ab, wenn sie keine weiteren Events empfangen wollen.