2012-02-23 2 views
1

Мне нужно создать многоязычный веб-сайт в JSP/Servlet.jstl и i18n: выбор языка и db

Я рассматриваю JSTL для i18n, и я имею некоторые общие вопросы:

1) Можно ли справиться с JSTL как выбор языка вручную (например, с помощью выпадающего меню или ссылка) и автоматическое распознавание языка?

2) Какой лучший подход, если большая часть строк является динамической (извлекается из базы данных)?

ответ

1

возможно справиться с JSTL как выбор языка вручную (например, с помощью выпадающего меню или ссылки) и автоматического распознавания языка?

Да. См. Также How to internationalize a Java web application?.


что является лучшим подходом, если большая часть строк динамичны (извлекаются из базы данных)?

Вы должны были бы создать пользовательский ResourceBundle.Control который вы впрыснуть в контексте запроса на Filter. Этот фильтр должен в основном взять на себя работу <fmt:setLocale> и <fmt:setBundle>.

request.setAttribute("bundleName", yourCustomResourceBundle); 

Смотрите также internationalization in JSF with ResourceBundle entries which are loaded from database (хотя JSF целенаправленным, идея та же для простого JSP, как было сказано, вы должны были бы только Filter вместо того, чтобы установить его).

+0

Благодарим за полный ответ. У меня есть ошибка на вашем примере в «Как интернационализировать java-приложение», точно в теге option: Несколько аннотаций, найденных в этой строке: - Недопустимое расположение текста (''}) в теге (

Смежные вопросы