Я ищу элегантное решение для следующей проблемы:
В моей базе данных есть несколько предопределенных (!) Сущностей.Эти сущности имеют имена и описания (строки).Вокруг уровня доступа к данным есть несколько EJB-компонентов, содержащих бизнес-логику для загрузки / поиска / etc.эти сущности.
Теперь для веб-интерфейса мы разрабатываем приложение GWT, которое вызывает методы EJB на нашем бэкэнде.
Проблема в том, что имя и описание сущностей, упомянутых вышедолжен быть интернационализирован - например, в зависимости от локали пользователя, описание сущности должно быть «Моё классное описание» (на английском языке) или «Beschreibung bla» (на немецком языке) или как угодно:)
Мой первый подход состоял в использованииСтрока ресурса в базе данных.Таким образом, сущность A имеет описание «descriptionA», сущность B имеет описание «descriptionB» ... Позже приложение GWT (или любой другой клиент) преобразует эту строку ресурса в фактическое описание, используя своего рода «пакет ресурсов».Например:
* resources_en.properties *:
descriptionA = Фактическое описание объекта A
descriptionB = Фактическое описание объекта B
* resources_de.properties*:
descriptionA = Beschreibung A
descriptionB = Beschreibung B
(Помните, что сущности предопределены, поэтому можно «знать» все описания во время компиляции. НОбыло бы лучше, если бы пакет ресурсов мог быть улучшен без перекомпиляции приложения).
Возможно ли это с GWT?Как я могу это сделать?Лучше ли «переводить» на сервере или на стороне клиента?
В противном случае мне придется иметь дело со всем этим i18n на стороне сервера.Что ж, это позволило бы хранить данные вместе (вместо определения описаний на стороне клиента).Но большой недостаток заключается в том, что бэкэнд должен знать локали вызывающего.
С уважением, Фрэнк