Выбор текста сообщения в зависимости от локализации - это не совсем тот вопрос который меня интересовал. Хотя, спасибо за пример, думаю что потом обязательно его применю.
Вопрос был в другом - когда происходит сброс состояния на сервере приложения (передеплоено приложение, инвалидирована сессия и др.) фреймворк vaadin через com.vaadin.server.CustomizedSystemMessages, выдает сообщение в браузер заранее определенное текстовое сообщение о данном случае (есть еще и про отключенные куки, про проблемы с коммуникациями и т.д.):
[code]
Contains the system messages used to notify the user about various critical situations that can occur.
Use VaadinService.setSystemMessagesProvider(SystemMessagesProvider) to customize.
The defaults defined in this class are:
sessionExpiredURL = null
sessionExpiredNotificationEnabled = true
sessionExpiredCaption = “”
sessionExpiredMessage = “Take note of any unsaved data, and click here to continue.”
communicationErrorURL = null
communicationErrorNotificationEnabled = true
communicationErrorCaption = “Communication problem”
communicationErrorMessage = “Take note of any unsaved data, and click here to continue.”
internalErrorURL = null
internalErrorNotificationEnabled = true
internalErrorCaption = “Internal error”
internalErrorMessage = “Please notify the administrator.
Take note of any unsaved data, and click here to continue.”
cookiesDisabledURL = null
cookiesDisabledNotificationEnabled = true
cookiesDisabledCaption = “Cookies disabled”
cookiesDisabledMessage = "This application requires cookies to function.
Please enable cookies in your browser and click here to try again.
[/code]На английском языке все отображаеться нормально. А с русским текстом проблемы. Дело в том что, данный текст генерируеться в UTF-8, а отображаеться “вопросами”, хотя весь проект и все элементы на UTF-8 выводяться нормально.
Есть подозрение, что данный текст при преобразовании в javascript “ломаеться”, хотя в теле основной страницы отображаеться корректно:
<script type="text/javascript" src="./VAADIN/vaadinPush.js?v=7.7.3"></script>
<script type="text/javascript" src="./VAADIN/vaadinBootstrap.js?v=7.7.3"></script>
<script type="text/javascript">//<![CDATA[
if (!window.vaadin) alert("Failed to load the bootstrap javascript: ./VAADIN/vaadinBootstrap.js?v=7.7.3");
vaadin.initApplication("cabinet-59742920",{"theme":"cabinet","versionInfo":{"vaadinVersion":"7.7.3","atmosphereVersion":"2.2.9.vaadin2"},"widgetset":"kd.kaps.cabinet.widgetset.CabinetWidgetset","widgetsetReady":true,"comErrMsg":{"caption":"Личный кабинет - коммуникационная ошибка","message":"Нажмите на данное вообщение или Esc","url":null},"authErrMsg":{"caption":"Личный кабинет - ошибка аутентификации","message":"Нажмите на данное вообщение или Esc","url":null},"sessExpMsg":{"caption":"Личный кабинет - Сессия устарела","message":"Нажмите на данное вообщение или Esc","url":null},"vaadinDir":"./VAADIN/","standalone":true,"heartbeatInterval":300,"serviceUrl":"."});
//]]></script>