Domanda

Ho alcuni problemi con il fare la mia web-app adattato per le impostazioni della lingua browseres utenti remoti. Ho usato ResourceBundleMessageSource per esso. Ecco come si presenta:

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

E ho due file .properties:

  • messages.properties

  • messages_ru.properties

Si trovano in src / risorse / messaggi.

Voglio configurare il mio app modo tale, che quando le impostazioni di lingua agli utenti remoti di browser contengono russo, la mia app dovrebbe utilizzare i messaggi russi (messages_ru), altrimenti (se la lingua non è configurato o non è russo), dovrebbe utilizzare meessages. proprietà (che contiene i messaggi in inglese).

Quando l'installazione russo nel mio browser, funziona benissimo. Quando ho eliminare tutte le impostazioni, è anche mostra russo (penso che dipende dalle impostazioni locali del sistema). E quando ho impostato chi un'altra lingua, mi mostra anche i messaggi russi.

L'unico modo per rendere la mia app per visualizzare i messaggi in inglese è rinominare messages.properties a messages_en.properties e set in del browser in lingua inglese. Ma io voglio fare la mia app adottata per tutte le impostazioni della lingua (quando si usa russo, se ha bisogno, e inglese per tutte le altre impostazioni e tutti gli altri paesi).

Tutte le idee?

È stato utile?

Soluzione

È necessario impostare

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

In questo caso Primavera userà messages.properties come ripiego, quindi dovrebbe contenere messaggi nella locale "default" per la vostra applicazione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top