Die Interface

M.Klink
Der Application-Server stellt zur Benutzung zwei Unterschiedliche Interface zur Verfügung. Das erste ist zur Auftragsannahme vom Client uns das zweite zur Kommunikation mit dem Workflowmanager (siehe Abbildung serverallgemein). Hierbei ist wichtig zu beachten, daß es sich nicht um ein Interface in programmiersprachlicher Semantik handelt. In diesem Kapitel werden Abläufe und der Aufbau des Applicationservers beschrieben und noch nicht die Codeebene.

Diese Unterteilung auf zwei Interface hat nicht nur den Grund der logischen Strukturierung, sondern auch der Sicherheit. Bei der Technologie des Jboss wird, wenn von der Administration her keine Authentifizierung verlangt wird, jede Anfrage einfach abgearbeitet. Natürlich hat man die Möglichkeit nach einer Authentifizierung, dem Auftragsteller eine genau definierte Rolle zuzuweisen. Es ist möglich jede Bean, die man für den Jboss implemtiert hat entsprechenden Rollen zuzuweisen. Wir machten uns dies zunutze und entwickelten für unseren Server drei Rollen. Die erste ist die Rolle Client, sie wird allen Nutzern des Application-Servers zugeordnet, die sich über das Clientprogram verbinden. Diese Rolle berechtigt alle Funktionen aufzurufen, die im Clientinterface definiert sind. Die zweite ist die Rolle Workflowmanager und wird dementsprechent nur dem Workflowmanager zugeordnet. Sie berechtigt alle Funktionen im Workflowmanagerinterface auszuführen. Die letzte Rolle ist die Rolle Intern. Alle von uns implementierten Beans im Jboss haben diese Rolle und sind damit berechtigt sämtliche Funktionen aus allen Beans aufzurufen. Die Interfaces des Servers sind die Schnittsellen für den Client und den Workflowmanager. Die in Abschnit serveruberblick beschriebenen Aufrufe, die der Applicationserver bearbeiten kann, werden über die Interfaces aufgerufen. In den Interfaces selber wird keine Funktion ausgeführt, sondern die entsprechenden Funktionen werden durch das Interface im Auftragsabwickler aufgerufen. Dort werden die Funktionen ausgeführt und entsprechende Ergebnisse zurückgeliefert. Eventuell muss hierbei auf den Datenbankakteur zugegriffen werden. Es kann auch vorkommen, daß das Clientinterface direkt das Workflowmanagerinterface aufruft. Dies geschieht wenn vom Nutzer die Liste der möglichen Workflows abgefragt wird. Diese Abfrage wird dann einfach direkt an den Workflowmanager geleitet, da der Applicationserver keine Funktion zu erfüllen hat und nur als Kommunikationagent zwischen Client und Workflowmanager agiert.

Jan Kechel 2006-04-28