Использование шаблона freemarker с java приводит к неверному символу валюты. Ожидая $
, но получаю ¤
Я безуспешно пытался установить encoding
и outputEncoding
в freemarkerConfig
public String processTemplate(String freemarkerTemplate, Object model, Locale locale) throws IOException, TemplateException {
try {
this.freemarkerConfig.setSetting("locale", locale.getLanguage());
this.freemarkerConfig.setSetting("time_zone", "EST");
} catch (TemplateException e) {
log.warn("Failed to set locale {} for freemarker template.", locale.getLanguage(), e);
}
//freemarkerConfig.setEncoding(locale, "UTF-8");
//freemarkerConfig.setOutputEncoding("UTF-8");
Template template = freemarkerConfig.getTemplate(freemarkerTemplate);
//template.setOutputEncoding("UTF-8");
return FreeMarkerTemplateUtils.processTemplateIntoString(template, model);
}
Также пробовал добавить <#ftl encoding="utf-8">
в мой файл шаблона без каких-либо различий.
РЕДАКТИРОВАТЬ
Вот как я использую функцию валюты: ${amountValue?string.currency}