Afin d'utiliser les ressources dans une application Spring, il faut créer un répertoire i18n dans le répertoire ressources.
Créer un fichier pour la langue par défaut et ensuite un par langue qui sera supporté.
messages.properties
messages_fr.properties
Le contenu du premier fichier serait
paymentMode.CASH=Cash
paymentMode.DEBIT=Debit
paymentMode.CHECK=Check
paymentMode.CREDITCARD=Credit card
paymentMode.GIFTCARD=Gift card
et celui du deuxième
paymentMode.CASH=Comptant
paymentMode.DEBIT=D\u00e9bit
paymentMode.CHECK=Ch\u00c3\ u00a8que
paymentMode.CREDITCARD=Carte de cr\u00e9dit
paymentMode.GIFTCARD=Carte cadeaux
J'avais mis directement les accents, mais il semble qu'il y est eu une conversion à l'unicode.
Dans la classe où vous désirer accéder la valeur, il faut ajouter une propriété
@Autowired
private MessageSource messageSource;
Ensuite pour accéder au message vous pouvez utiliser une de ces deux méthodes
getMessage(String code, Object[] args, Locale locale);
getMessage(String code, Object[] args, String defaultMessage, Locale locale);
Dans notre cas, pour avoir la valeur de CASH en français.
messageSource.getMessage(" paymentMode." + CASH, null, Locale.FRENCH);
Aucun commentaire:
Enregistrer un commentaire