Aujourd'hui, je lisais la FAQ JSF, et je suis tombé sur la question portant sur les resource Bundle. Ni une ni deux, j'ai décidé de tester la chose.
Donc je crée un fichier "french.properties" dans lequel j'écrisque je place dans WebContent, je vais dans ma JSF et j'ajoute
Code : Sélectionner tout - Visualiser dans une fenêtre à part LABEL=libelléet enfin un peu plus bas dans la JSF, j'ajoute ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part <f:loadBundle var="msgs" basename="WebContent/french.properties"/>et le résultat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part <h:outputText value="#{msgs.LABEL}" id="libelle"/>
Code : Sélectionner tout - Visualiser dans une fenêtre à part java.util.MissingResourceException: Can't find bundle for base name french.properties, locale fr_FR
J'ai essayé de creuser la question plus avant, mais le moins qu'on puisse dire, c'est que la doc est très disparate sur la question. Certains implémentent une classe qui hérite de ResourceBundle, d'autres suggèrent d'utiliser la classe par défaut de facelets mais sans dire comment faire, d'autres inventent des bidouillages de type carton bout de ficelle, et bref je sens que je vais y passer des heures alors je me tourne vers vous:
Où est mon erreur, et comment la résoudre?
Partager