Pregunta

Tengo algunos problemas con hacer que mi aplicación web adaptada para la configuración de idioma del usuario browseres remotas. Solía ??ResourceBundleMessageSource por ello. Se ve así:

<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
    <property name="basename" value="resources/messages" /> </bean>

Y tengo dos archivos .properties:

  • messages.properties

  • messages_ru.properties

Se encuentran en src / recursos / mensajes.

Quiero configurar mi aplicación tal manera, que cuando la configuración de idioma usuarios remotos navegador contienen ruso, mi aplicación debe utilizar mensajes ruso (messages_ru), de lo contrario (si el lenguaje no está configurado o no es ruso), se debe utilizar meessages. propiedades (que contiene mensajes en inglés).

Cuando la configuración ruso en mi navegador, funciona bien. Cuando borro todos los ajustes, es también muestra ruso (creo que depende de la configuración regional del sistema). Y cuando me puse un poco de otro idioma, sino que también me muestran mensajes ruso.

La única manera de hacer que mi aplicación para mostrar mensajes en inglés es renombrar messages.properties a messages_en.properties y juego de navegador en Inglés Lang. Pero yo quiero hacer mi aplicación adoptada para todas las configuraciones de idioma (cuando se utilice ruso, si es necesario, y el Inglés para los otros valores y otros países).

¿Alguna idea?

¿Fue útil?

Solución

Es necesario configurar

<bean id="messageSource" 
     class="org.springframework.context.support.ReloadableResourceBundleMessageSource">  
    <property name="basename" value="resources/messages" />
    <property name="fallbackToSystemLocale" value="false" />
</bean> 

En este caso primavera utilizará messages.properties como punto de retorno, por lo que debe contener mensajes en la configuración regional "por defecto" para su aplicación.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top