JSTL fmt тэг и i18n
От: relgames  
Дата: 31.05.05 16:28
Оценка:
Есть JSP страница, которая использует JSTL fmt тэги. Есть файл i18n_en_US.properties, который лежит в web-inf/classes.
Почему-то не находится правильный файл ресурсов, хотя есть файл назвать просто i18n.properties, то все строковые ресурсы отображаются правильно. Язык сервера — английский, США. Все крутится под Tomcat.

В чем может быть дело? Где вообще задается локаль для JSTL fmt тэга?
Punk Not Dead
Re: JSTL fmt тэг и i18n
От: Risotto Украина  
Дата: 31.05.05 18:00
Оценка:
Здравствуйте, relgames, Вы писали:

R>В чем может быть дело? Где вообще задается локаль для JSTL fmt тэга?


1. Или задавай требуемую локали (<fmt:setLocale>)
2. Или явно указывай связку (<fmt:bundle basename="ApplicationResource_en"/>)
Кто-то сказал когда-то давно, что людям свойственно убивать тех, кого любишь. Что ж, верно и обратное.
Re: JSTL fmt тэг и i18n
От: StanislavK Великобритания  
Дата: 02.06.05 07:51
Оценка:
Здравствуйте, relgames, Вы писали:

R>Есть JSP страница, которая использует JSTL fmt тэги. Есть файл i18n_en_US.properties, который лежит в web-inf/classes.

R>Почему-то не находится правильный файл ресурсов, хотя есть файл назвать просто i18n.properties, то все строковые ресурсы отображаются правильно. Язык сервера — английский, США. Все крутится под Tomcat.

R>В чем может быть дело? Где вообще задается локаль для JSTL fmt тэга?


Она берется из реквеста, причем не из request.getLocale, а из request.getLocales, который возвращает список локалей в порядке их приоритета:

"In the browser-based locale setting, the client determines via its browser settings
which locale(s) should be used by the web application. The action retrieves the
client’s locale preferences by calling ServletRequest.getLocales() on the
incoming request. This returns a list of the locales (in order of preference) that the
client wants to use."

Если хочешь, задавать локаль сам, то используй "fmt:setLocale" или через пропертю "javax.servlet.jsp.jstl.fmt.locale".
И ваще, RTFM
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.