Protokollressourcenpakete und Nachrichtendateien erstellen

Sie können in die internen WebSphere Application Server-Protokolle geschriebene Nachrichten zur Anzeige an andere Prozesse weiterleiten. Werden Nachrichten in einer Administrationskonsole angezeigt, die an einem anderen Standort als der Serverprozess ausgeführt wird, können diese Nachrichten mit der späten Bindung lokalisiert werden. Späte Bindung bedeutet, dass WebSphere Application Server Nachrichten nicht zum Zeitpunkt der Protokollierung lokalisiert, sondern erst mit dem Prozess, der die Nachricht anzeigt.

Informationen zu diesem Vorgang

Jede Methode, die Nachrichten akzeptiert, lokalisiert diese Nachrichten. Der Mechanismus, mit dem lokalisierte Nachrichten zur Verfügung gestellt werden, ist die Ressourcenpaketunterstützung des IBM® Developer Kit, Java™ Technology Edition. Falls Sie sich mit den vom Developer Kit implementierten Ressourcenpaketen nicht auskennen, können Sie sich in verschiedenen Texten oder in der API-Dokumentation über die Klassen java.util.ResourceBundle, java.util.ListResourceBundle und java.util.PropertyResourceBundle sowie die Klasse java.text.MessageFormat informieren.

Der bevorzugte Mechanismus ist die Klasse PropertyResourceBundle.

Für eine fehlerfreie Lokalisierung muss der Anzeigeprozess Zugriff auf das Ressourcenpaket haben, in dem der Nachrichtentext gespeichert ist. Sie müssen das Ressourcenpaket gesondert von der Anwendung packen und an einer Position installieren, auf die der Anzeigeprozess Zugriff hat.

Standardmäßig lokalisiert die Laufzeitumgebung von WebSphere Application Server alle Nachrichten, wenn sie aufgezeichnet werden. Deswegen muss keine Datei mit der Erweiterung .jar an die Anwendung übergeben werden, wenn Sie die Nachrichten nicht an einer anderen Position lokalisieren. Sie können jedoch die Technik der frühen Bindung verwenden, um Nachrichten zu lokalisieren, wenn sie protokolliert werden. Eine Anwendung, die mit früher Bindung arbeitet, muss die Nachrichten vor der Protokollierung lokalisieren. Die Anwendung sucht den lokalisierten Text im Ressourcenpaket und formatiert die Nachricht. Verwenden Sie die Technik der frühen Bindung, um die Ressourcenpakete der Anwendung mit der Anwendung zu packen.

Führen Sie die folgenden Schritte aus, um ein Ressourcenpaket zu erstellen:

Vorgehensweise

  1. Erstellen Sie eine Texteigenschaftendatei, die die Nachrichtenschlüssel und die zugehörigen Nachrichten auflistet. Die Eigenschaftendatei muss die folgenden Kenndaten haben:
    • Jede Eigenschaft in der Datei wird durch einen Zeilenumbruch von einem anderen getrennt.
    • Wenn eine Zeile nur Leerzeichen enthält oder mit Nummernzeichen (#) bzw. Ausrufezeichen (!) beginnt, wird die Zeile ignoriert. Die Zeichen # und ! können daher verwendet werden, um Kommentare in die Datei aufzunehmen.
    • Jede Zeile in der Datei zeigt eine einzelne Eigenschaft an. Es sei denn, diese ist ein Kommentar oder besteht nur aus leeren Feldern. Ein Backslash (\) wird als Fortsetzung der Zeile behandelt.
    • Die Syntax einer Eigenschaftendatei besteht aus einem Schlüssel, einem Trennzeichen und einem Element. Gültige Trennzeichen sind Gleichheitszeichen (=), Doppelpunkt (:) und Leerzeichen ( ).
    • Der Schlüssel besteht aus allen Zeichen der Zeile ab dem ersten Zeichen, das kein Leerzeichen ist bis zum ersten Trennzeichen. Trennungszeichen können im Schlüssel enthalten sein, wenn diese mit einem Backslash (\) abgetrennt sind. Jedoch ist dies nicht zu empfehlen, da das Abtrennen von Zeichen fehleranfällig und verwirrend sein kann. Stattdessen ist die Verwendung eines gültigen Trennzeichens angeraten, das nicht in den Schlüsseln der Eigenschaftendatei auftaucht.
    • Ein Leerzeichen nach Schlüssel und Trennzeichen wird ignoriert, bis das erste Zeichen festgestellt wird, das kein Leerzeichen ist. Alle Zeichen vor dem Zeilenumbruch definieren das Element.

    Eine vollständige Beschreibung der Syntax und des Aufbaus von Eigenschaftendateien finden Sie in der Java-Dokumentation für die Klasse "java.util.Properties".

  2. Übersetzen Sie die Datei in lokalisierte Versionen mit sprachspezifischen Dateinamen. Eine Datei mit dem Namen DefaultMessages.properties kann beispielsweise für Deutsch in DefaultMessages_de.properties oder für Japanisch in DefaultMessages_ja.properties übersetzt werden.
  3. Wenn die übersetzten Ressourcenpakete verfügbar sind, stellen Sie das Paket in ein Verzeichnis, das zum Klassenpfad der Anwendung gehört.
  4. Sobald Sie eine Nachrichtenprotokollfunktion vom Log Manager erhalten haben, können Sie ihn für die Verwendung eines bestimmten Ressourcenpakets konfigurieren. Nachrichten, die mit der Protokollfunktions-API protokolliert werden, verwenden dieses Ressourcenpaket für die Nachrichtenlokalisierung. Zur Laufzeit bestimmte die Ländereinstellung des Benutzers die Eigenschaftendatei, aus der die mit dem Nachrichtenschlüssel angegebene Nachricht extrahiert wird. Auf diese Weise wird sichergestellt, dass die Nachricht in der richtigen Sprache bereitgestellt wird.
  5. Wird die Methode der Nachrichtenprotokollfunktion msg aufgerufen, muss explizit der Name eines Ressourcenpakets angegeben werden.

Beispiel

Sie können Ressourcenpakete auf verschiedene Weise erstellen. Der beste und einfachste Weg besteht darin, eine Eigenschaftendatei zu erstellen, die ein Eigenschaftenressourcenpaket unterstützt. Dieses Beispiel veranschaulicht, wie eine solche Eigenschaftendatei erstellt wird.

Für dieses Beispiel werden vier lokalisierbare Nachrichten bereitgestellt. Die Eigenschaftendatei wird erstellt, und die Schlüssel-/Wert-Paare werden in die Datei eingefügt. Alle normalen Konventionen und Regeln für Eigenschaftendatei gelten für diese Datei. Darüber hinaus muss der Ersteller weitere Einschränkungen für die Werte, die von der Java-Klasse "MessageFormat" ausgehen, berücksichtigen. Beispielsweise muss ein Apostroph mit einem Escape-Zeichen versehen werden, da sonst ein Fehler auftritt. Vermeiden Sie auch die Verwendung von nicht portierbaren Zeichen. WebSphere Application Server unterstützt nicht die Verwendung erweiterter Formatierungskonventionen, die die Klasse "MessageFormat" unterstützt, wie z. B. {1, date} oder {0, number, integer}.

Nehmen Sie an, dass das Basisverzeichnis für die Anwendung, die dieses Ressourcenpaket verwendet, baseDir ist, und dass dieses Verzeichnis im Klassenpfad angegeben ist. Nehmen Sie an, dass die Eigenschaftendatei in einem Unterverzeichnis von baseDir, das nicht im Klassenpfad angegeben ist (z. B. baseDir/subDir1/subDir2/resources), gespeichert ist. Damit die Nachrichtendatei aufgelöst werden kann, wird der Name subDir1.subDir2.resources.DefaultMessage zur Angabe des Eigenschaftenressourcenpakets verwendet und an die Nachrichtenprotokollfunktion übergeben.

In diesem Beispiel heißt die Eigenschaftendatei DefaultMessages.properties.

# Inhalt der Datei DefaultMessages.properties 
MSG_KEY_00=Eine Nachricht ohne Substitutionsparameter. 
MSG_KEY_01=Eine Nachricht ohne Substitutionsparameter: parm1={0} 
MSG_KEY_02=Eine Nachricht mit zwei Substitutionsparametern: parm1={0}, parm2 = {1} 
MSG_KEY_03=Eine Nachricht mit drei Substitutionsparametern: parm1={0}, parm2 = {1}, parm3={2} 

Wenn die Datei DefaultMessages.properties erstellt wurde, kann die Datei an ein Übersetzungscenter gesendet werden, das die lokalisierten Versionen erstellt.

Nächste Schritte

Die Anwendung sucht das Ressourcenpaket ausgehend von der Position der Datei in Relation zu den Verzeichnissen im Klassenpfad. Wenn das Eigenschaftenressourcenpaket DefaultMessages.properties beispielsweise im Verzeichnis Basisverzeichnis/Unterverzeichnis1/Unterverzeichnis2/resources gespeichert ist, und Basisverzeichnis im Klassenpfad enthalten ist, wird der Name Unterverzeichnis1.Unterverzeichnis2.resources.DefaultMessage an die Nachrichtenprotokollfunktion übergeben, um das Ressourcenpaket zu identifizieren.

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=ttrb_logresourcebun
Dateiname:ttrb_logresourcebun.html