Nous implémentons i18n en utilisant JSTL et rencontrons un problème que les textes de ressources définis dans le fichier .properties et ayant des caractères non ISO 8859 (par exemple les langues inidiques) ne peuvent pas être rendus par tag. Après avoir plongé dans le code de la balise et dans la classe BundleHelper, nous avons finalement constaté qu'il utilisait en interne la méthode ResourceBundle.getBundle qui à son tour utilise PropertyResourceBundle pour charger le fichier .properties en tant que groupe de ressources.Fichiers de ressources pour les langues autres que ISO 8859
Il repose en interne sur la méthode java.util.Properties # load (InputStream) qui ne prend pas en charge la lecture de caractères non ISO 8859 et la seule solution consiste à représenter ces caractères au format hexadécimal hexadécimal hexadécimal, ce qui est tout à fait irréaliste dans le cas où le fichier .properties entier est pour la langue hindi!
Y a-t-il des solutions pour cela? J'ai essayé d'utiliser le format XML dans le fichier .properties mais il n'a pas été reconnu par PropertyResourceBundle!
détails Environnement sont: JDK 1.5, Weblogic 9,2
Avez-vous essayé d'utiliser UTF-8? –