Обновление bean-компонентов (I18N) для веб-службы Spring MVC - PullRequest
0 голосов
/ 04 апреля 2011

У меня есть веб-сервис, написанный на Spring MVC для веб-приложения. Пользователь может изменить язык и язык своей страницы, поэтому вызов этой веб-службы выполняется с этой информацией. Для информации, при запуске я загружаю несколько бинов для конфигурации моего веб-приложения. Эти атрибуты bean должны быть интернационализированы

У меня вопрос, как я могу обновить значения моего bean-компонента непосредственно из пользовательского вызова?

1 Ответ

0 голосов
/ 05 апреля 2011

Здесь есть две вещи:

Одна из них - общая архитектура i18n.В лучшем случае Бины (контроллеры, модели) не должны содержать переводимых текстов, поэтому для их локализации не требуется никакой работы.Это идеальная ситуация, которая не часто случается на практике.

Другой способ сделать контроллеры локализуемыми.Опять же, есть два возможных подхода: один - использовать ключи ресурсов вместо строк, сообщений и т. Д. И разрешить их в представлении View для реального перевода, непосредственно перед его отображением пользователю, другой - заставить контроллеры читать эти сообщения из ресурсов -Вы сказали, что знаете Locale, так что это может быть сделано.Если вы выбираете последнее решение, вам, вероятно, нужно ограничить свой Scope запросом (поскольку разные пользователи могут захотеть использовать разные языки, и, насколько я понимаю, написанные вами пользователи могут захотеть изменить свой язык на лету).

...