Création de regroupements de ressources de journal et de fichiers de messages
Vous pouvez transmettre à d'autres processus des messages enregistrés dans les journaux internes WebSphere Application Server en vue de les afficher. Les messages qui s'affichent sur la console d'administration, laquelle peut s'exécuter dans un endroit différent de celui du processus de serveur, peuvent être localisés à l'aide du processus late binding. Cette attribution a posteriori signifie que WebSphere Application Server ne localise pas le message au moment de sa consignation, mais délègue cette localisation au processus qui affiche ce message.
Pourquoi et quand exécuter cette tâche
Toutes les méthodes qui acceptent les messages localisent ces messages. Le mécanisme qui permet de fournir des messages localisés est la prise en charge des regroupements de ressources, disponible dans IBM® Developer Kit, Java™ Technology Edition. Si vous ne connaissez pas bien le concept de regroupement de ressources implémenté par le kit du développeur, vous pouvez obtenir plus d'informations dans différents documents ou en lisant la documentation API consacrée aux classes java.util.ResourceBundle, java.util.ListResourceBundle et java.util.PropertyResourceBundle classes, ainsi qu'à la classe java.text.MessageFormat.
La classe PropertyResourceBundle est le mécanisme recommandé.
Pour localiser le message correctement, le processus d'affichage doit avoir accès au regroupement de ressources dans lequel le texte du message est stocké. Vous devez assembler le regroupement de ressources séparément de l'application et l'installer à un emplacement auquel le processus d'affichage peut y accéder.
Par défaut, l'environnement d'exécution WebSphere Application Server localise tous les messages lors de leur consignation. Il n'est donc plus nécessaire de transmettre un fichier .jar à l'application, sauf si vous devez effectuer la localisation à un autre emplacement. Cependant, vous pouvez utiliser la technique d'attribution a priori pour localiser les messages à mesure de leur consignation. Une application qui utilise cette technique doit localiser le message avant de le journaliser. L'application recherche le texte localisé dans le regroupement de ressources et formate le message. Utilisez cette technique pour conditionner les regroupements de ressources de l'application avec l'application.
Pour créer un regroupement de ressources, procédez comme suit :
Procédure
Exemple
Vous pouvez créer des regroupements de ressources de plusieurs manières. La meilleure méthode et la plus simple consiste à créer un fichier de propriétés qui prend en charge un regroupement de ressources de propriétés. Cet exemple montre comment créer ce fichier de propriétés.
Quatre messages "localisables" sont fournis pour cet exemple. Le fichier de propriétés est créé et les paires clé-valeur sont insérées. Toutes les conventions et règles classiques s'appliquent à ce fichier de propriétés. De plus, le créateur du fichier doit tenir compte des autres restrictions imposées aux valeurs par la classe MessageFormat Java. Par exemple, les apostrophes doivent être "éliminées" sous peine d'incident. Evitez l'emploi de caractères sans portabilité. WebSphere Application Server ne prend pas en charge l'utilisation des conventions de formatage étendues qu'accepte la classe MessageFormat, telles que {1, date} ou {0, nombre, entier}.
Par principe, le répertoire de base de l'application qui utilise ce regroupement de ressources est "Répbase", qui se trouve dans le chemin d'accès aux classes. Par principe également, le fichier de propriétés est stocké dans un sous-répertoire répBase qui ne se trouve pas dans le chemin d'accès aux classes (par exemple, répBase/sousRép1/sousRép2/resources). Pour que le fichier de messages soit résolu, le nom subDir1.subDir2.resources.DefaultMessage est utilisé pour identifier le regroupement de ressources des propriétés et est transmis au consignateur de messages.
Dans cet exemple, le fichier de propriétés se nomme MessagesDéfaut.propriétés.
# Contenu du fichier MessagesDéfaut.propriétés
MSG_KEY_00=Message sans substitution de paramètres.
MSG_KEY_01=A message avec une substitution de paramètre : parm1={0}
MSG_KEY_02=Message avec deux substitutions de paramètres : param1={0}, param2 = {1}
MSG_KEY_03=Message avec trois substitutions de paramètres : param1={0}, param2 = {1}, param3={2}
Une fois le fichier MessagesDéfaut.propriétés créé, il peut être envoyé à un centre de traduction où seront générées des versions localisées.