SR-JRC | ein Framework für Java-Richclient-Anwendungen |
| JRC-AnwendungenWie schon unter Aufbau beschrieben, wurde das Framework zur Erstellung von grafischen Anwendungen in verteilter Umgebung entworfen. Zur verteilten Umgebung gehört nicht nur eine Datenbank, die auf einem anderen Rechner installiert sein kann, sondern auch Systemdienste, die irgendwelche Verarbeitungen durchführen. Diese können aus der grafischen Anwendung heraus überwacht, gestartet und beendet werden. Die notwendigen Dialog gehören bereits zum Framework, d.h. die Diensteüberwachung funktioniert "out of the box", wie es neudeutsch so schön heißt. Für das harmonische Miteinander gibt es 2 Anwendungen: Ist der Anwendungsstarter und vergleichbar mit dem Anwendungsserver von Webanwendungen. Der Anwendungsstarter ist über XML-Dateien konfigurierbar, wobei die einzelnen Werte aus der Umgebung des Anwenders überschreiben werden können. Das Laden der Grundkonfiguration und überschreiben der Werte mit Benutzereinstellungen gehört auch zum Basisumfang und funktioniert ohne weiteres zutun. Die Benutzerwerte können z.B. bei der Installation eingetragen werden, sodass die Werte aus den XML-Dateien garnicht zum Tragen kommen. Der Anwendungsstarter lädt die definierten Systemdienste, wie z.B. den Datenbanktreiber o.ä. und schaut dann im vereinbarten Verzeichnis, welche Anwendungen zu laden sind. Eine Anwendung ist eine spezielle Variante einer Jar-Datei, die eine eigene Systemkonfiguration mitbringen kann. In der Anwendungs-Jar-Datei sind die Abhängigkeiten der Anwendung eingetragen. Diese lädt der Anwendungsstarter bevor er die Kontrolle an die Anwendung weiter gibt. Der Anwendungsstarter hat eine zentrale Hilfefunktion, den "About"-Dialog, bei dem sich jede geladene Anwendung ausweisen kann, einen zentralen Optionsdialog, dem jede Anwendung eine Einstellungsseite zur Verfügung stellen kann, sowie die Funktionalität zwischen den einzelnen Anwendungen zu wechseln. Beim Wechsel der Anwendung wird - je nach aktivem Fensterverwalter - das Anwendungsmenü und die Toolbars ausgetauscht. Ist der Verwalter der Systemdienste. Die Systemdienste sind "nur" für Linuxsystem vorgesehen, genau wie der Diensteverwalter. Der Diensteverwalter läft mit Superuser-Rechten, d.h. er kann Systemdienste unter anderer Benutzerkennung starten und diese auch wieder beenden. Gestartete Dienste werden zyklisch überwacht, d.h. wenn ein Dienst von alleine beendet würde, bekommt der SRServiceManager das mit und ändert den entsprechenden Eintrag des Dienstes. Ein Systemdienst kann auch als "permanenter" Dienst konfiguriert werden, d.h. dann wird er vom Diensteverwalter automatisch gestartet. Für Wartungszwecke kann auch ein solcher permanenter Dienst (von der grafischen Anwendung aus) beendet werden. Er wird kurz nach Beendigung wieder neu gestartet. Der SRServiceManager kümmert sich nur um Dienste, die für den Rechner konfiguriert sind, auf dem der SRServiceManager läuft. So können mehrere Arbeitsrechner von einer GUI-Anwendung aus verwaltet werden (auf jedem läuft dann eine Instanz des SRServiceManager). |