2010-05-04 6 views
3

(ATTENTION: ceci est ma première application java, venant de .NET, alors ne me bash pas si j'écris trop d'ordures)une application JSF Localiser 1.2 avec des ressources UTF-8

Je développe une application Web JSF 1.2 simple qui devrait prendre en charge le russe, le chinois et d'autres langues en dehors de l'ISO 8859-1, qui est automatiquement utilisé dans Properties.load().

Existe-t-il un moyen d'utiliser les propriétés chargées à partir de fichiers XML, avec Properties.loadFromXml(), dans JSF, sans écrire trop de code?

Je sais qu'il existe d'autres façons de le faire (écrire mon propre chargeur, échapper les caractères ...), mais j'aimerais vraiment trouver une solution simple, et je ne la vois pas dans tous les forums J'ai vérifié.

Merci à l'avance pour toute aide

Répondre

3

Je pense que l'approche la plus utilisée est d'encoder vos fichiers .properties avec des séquences d'échappement unicode. Cela peut facilement être fait avec le plugin AnyEdit pour Eclipse. Le problème est que ResourceBundle utilise le constructeur Properties(inputStream), plutôt que Properties(reader).

Vous pouvez utiliser votre propre LoadBundle composant au lieu de f:loadBundle à surmonter, mais vous devrez:

  • étendent une
  • d'origine définissent comme composant personnalisé (facelets et/ou jsp)
  • définir une nouvelle ResourceBundle mise en œuvre
  • instancier, en utilisant new InputStreamReader(classloader.getResourceAsStream(..))
Questions connexes