Dans ITIM, les fichiers de libellés sont gérés dans des fichiers properties, qui sont lus par l'application java.
Pour les libellés en anglais, pas de problème, mais lorsqu'on veut ajouter des libellés avec des caractères accentués ou des caractères cyrilliques, il faut encoder tout ceci en ISO8859,car dans JDK 1.5, les fichiers *.properties doivent être encodé en ISO-8859-1. De ce fait, un caractère "é" doit être encodé comme "\u00e9". Pas très pratique à l'usage.
Heureusement, il y a un utilitaire java fourni avec le jdk 1.5 qui permet de convertir un fichier natif en ASCII : native2ascii. Son fonctionnement est simple :
native2ascii -encodingfichier.origine fichier.ascii
Par exemple, j'ai un fichier labels.utf8
encodé en UTF8, dont le contenu est :
badgeid=Numéro de badge arrivaldate=Date d'arrivée leavingdate=Date de départ createdby=Créateur de l'entrée creationdate=Date de création
Pour le convertir en ASCII, on lance la commande :
native2ascii -encoding utf8 labels.utf8 labels.properties
Le fichier labels.properties
est alors converti en iso8859-1 :
badgeid=Num\u00e9ro de badge arrivaldate=Date d'arriv\u00e9e leavingdate=Date de d\u00e9part createdby=Cr\u00e9ateur de l'entr\u00e9e creationdate=Date de cr\u00e9ation
Vérification avec la commande file sous linux :
$ file labels* labels.properties: ASCII text labels.utf8: UTF-8 Unicode text
Dès lors, le fichier properties peut être utilisé dans une application java.
Dans le cas du logiciel ITIM (IBM Tivoli Identity Manager), c'est particulièrement intéressant pour convertir les libellés, que l'on trouve dans $ITIM_HOME/data/CustomLabels.properties
.