| |
Die Tag-Handler-Klasse
muss entweder die Klasse TagSupport oder BodySupport erweitern. Will
man Logik implementieren, die bei Aufruf des Start-Tags ausgeführt
wird, überschreibt man die
Methode doStartTag(). Bei einer Implementierung von doEndTag() wird die Logik
des End-Tags
definiert.
In der Descriptor-Datei wird das selbsterstellte Tag
beim Server registriert, d.h. in dieser Datei
ordnet man dem beliebigen Tag-Namen die Tag-Handler-Klasse
zu, welche die Logik enthält.
Neben dem Namen der zu definierenden Tag-Bibliothek beinhaltet diese Datei eine
kurze
Beschreibung (beispielsweise für welchen Zweck diese Bibliothek vorgesehen
ist).
Nachdem die Logik des Tags in der Tag-Handler-Klasse
definiert wurde und ein Name für das
Tag innerhalb der Descriptor-Datei vergeben wurde, kann
die Tag-Bibliothek mit ihren Tags
innerhalb einer JavaServer Page verwendet werden. Vor der ersten Benutzung der
Tagsmuss
über die taglib-Direktive die Bibliothek eingebunden werden: <%@ taglib uri=meineTaglib.tld prefix=meineTags %>
Über das Attribut prefix wird der Bibliothek innerhalb
der JavaServer Page ein Name zugeordnet,
um sie von möglichen anderen eingebundenen Bibliotheken
zu unterscheiden. Es könnte ja
vorkommen, dass z.B. das Tag form in verschiedenen Bibliotheken verwendet wird.
So ist mit
Hilfe des Präfix eine eindeutige Trennung möglich. Die Verwendung sieht
folgendermaßen aus:
<meineTags:tag1 />
7.6 Internationalisierung
Vor wenigen Jahren
wusste ein Software-Entwickler meist sehr genau, für welche Zielgruppe und
somit in welcher Sprache er eine Anwendung zu entwickeln hatte.
Doch durch die zunehmende
Anzahl von Web-Anwendungen heutzutage werden nationale und sprachliche Grenzen
über-
wunden. Der Entwickler kann nicht mehr vorhersagen, wer zu seiner Zielgruppe gehören
wird
und welche Sprachen diese spricht. Es ist also notwendig, Web-Applikationen für
mehrere
Sprachen zu entwickeln.
In Java-Plattform sind einem Entwickler die Mechanismen
zur Internationalisierung bereitstellt. In
einer zentralen Datei werden alle Texte einer Sprache
für eine Applikation abgelegt (die soge-
nannte Properties-Datei). In dem User-Interface werden nicht die Beschriftungen
(Benennung der
Eingabefelder, Beschriftung der Buttons etc.) im Klartext, sondern lediglich nur
die Verweise auf
Ressourcen verwendet. Je nach Sprach- und Landeinstellungen eines Benutzer (siehe
ja-
va.util.Locale) kommt eine oder andere Properties-Datei zum Einsatz. Somit werden
die Verwei-
se durch sprach-/landspezifische Texte ersetzt.
7.7 Model Veiw Controller Pattern (MVC) allgemein
In modernen interaktiven Systemen wird zur Zeit am häufigsten das MVC (Model View Controller)
Paradigma [Literatur: Architekturmuster;
Andreas Krutscher, 1997] verwendet.
Das MVC
Architekturmuster teilt eine interaktive Applikation in drei Teile:
Model -
ein (möglicherweise sehr komplexes) Objekt, das Informationen verwaltet und
über Methoden
verfügt, um diese Informationen zu implementieren und auszulesen.
View -
eine grafische oder nicht-grafische (z.B. akustische) Repräsentation eines
Modells, die einige
oder alle Informationen darstellen kann und Änderungen im Mode l automatisch
an-
zeigt.
Controller
- ein Werkzeug, mit dem die Informationen eines Modell
und evtl. Eigenschaften der
Darstellung manipuliert werden können.
View und Controller bilden zusammen die Schnittstelle für den Benutzer. Das MVC-Muster
fordert, dass Veränderungen am
Datenmodell "automatisch", d.h. ohne expliziten Aufruf
einer
Refresh-Methode in allen Views dargestellt werden. Dabei stellt eine Benachrichtigungs-Strategie
die Konsistenz zwischen der Benutzerschnittstelle und dem Modell sicher.
|  |
|
| |
|
|