Интернационализация электронной почты с использованием шаблонов Velocity / FreeMarker

Как я могу достичь i18n, используя шаблонизатор, такой как Velocity или FreeMarker, для создания тела электронной почты?

Обычно люди склонны создавать шаблоны, такие как:

<h3>${message.hi} ${user.userName}, ${message.welcome}</h3>
<div>
   ${message.link}<a href="mailto:${user.emailAddress}">${user.emailAddress}</a>.
</div>

И создать пакет ресурсов со свойствами, такими как:

message.hi=Hi
message.welcome=Welcome to Spring!
message.link=Click here to send email.

Это создает одну основную проблему: если мой.vm файлы становятся большими со многими строками текста, становится утомительным переводить и управлять каждым из них в отдельном пакете ресурсов (.properties) файлы.

То, что я пытаюсь сделать, это иметь отдельный.vm файл, созданный для каждого языка, что-то вродеmytemplate_en_gb.vm, mytemplate_fr_fr.vm, mytemplate_de_de.vmи затем как-то сказать Velocity / Spring подобрать правильный, основанный на вводе Locale.

Это возможно весной? Или я должен искать, возможно, более простые и очевидные альтернативные подходы?

Примечание: я уже виделВесенний учебник о том, как создавать тела электронной почты с использованием шаблонизаторов. Но, похоже, он не отвечает на мой вопрос о i18n.

Ответы на вопрос(2)

Ваш ответ на вопрос