Попытка сделать веб-приложение JSF многоязычным.Для этого закройте весь HTML-код тегами <f:view>
:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html>
<html xmlns= ... >
<f:view locale="#{actionsContainer.languageDetails.locale}">
<head>
<meta charset="utf-8" />
<f:loadBundle basename="messages.Messages" var="key" />
</head>
<body>
<h:outputText value="#{key.myText}" />
</body>
</f:view>
</html>
Чем в ресурсах у меня есть несколько файлов 'Messages.properties' с переводами на некоторые языки:
- Messages_en.properties
- Messages_es.properties
- Messages.properties // default
Пример содержимого этих файлов 'Messages_es.properties':
myText=España
Давайте возьмем, моя локаль - "es", а затем испанский файл перевода загружает его значение и отображает на экране.Однако специальные символы (например, «ñ») не отображаются должным образом в выводе браузера.Вместо специальных испанских букв я получаю что-то вроде этого «Ã³».
Я попытался сохранить файл .properties с кодировкой UTF-8, без спецификации.И вывод был изменен на что-то вроде этого «».
И поэтому вопрос в том, как мне получить эти специальные языковые буквы в выводе?!