5

Ho due file nella directory/i18n WEB-INF:proprietà ReloadableResourceBundleMessageSource non trovando di primavera file delle

  • application.properties
  • messages.properties

ho configurato correttamente il mio fagiolo ReloadableResourceBundleMessageSource come segue (molla mvc):

<bean class="org.springframework.context.support.ReloadableResourceBundleMessageSource" id="messageSource" p:basenames="WEB-INF/i18n/messages,WEB-INF/i18n/application" 
     p:fallbackToSystemLocale="false"/> 

e ancora ottengo questo da Spring mvc:

2012-09-03 02:59:45,911 [http-bio-8080-exec-4] DEBUG org.springframework.context.support.ReloadableResourceBundleMessageSource - Loading properties [application.properties] 
2012-09-03 02:59:45,912 [http-bio-8080-exec-4] DEBUG org.springframework.context.support.ReloadableResourceBundleMessageSource - No properties file found for [WEB-INF/i18n/application_fr] - neither plain properties nor XML 
2012-09-03 02:59:45,912 [http-bio-8080-exec-4] DEBUG org.springframework.context.support.ReloadableResourceBundleMessageSource - Loading properties [messages.properties] 
2012-09-03 02:59:45,912 [http-bio-8080-exec-4] DEBUG org.springframework.context.support.ReloadableResourceBundleMessageSource - No properties file found for [WEB-INF/i18n/messages_fr] - neither plain properties nor XML 

Qualcuno può consigliare per favore? Potrei spostare i file delle proprietà sul classpath e modificare di conseguenza la mia configurazione, ma preferirei capire cosa sta succedendo.

risposta

1

Nel messaggio di log che dice questo: application_fr

Avviso del _fr. Ciò significa che sta provando a cercare la versione francese di application.properties (application_fr.properties). Se non riesce a trovare le proprietà francesi, dovrebbe tornare ai valori predefiniti (application.properties), quindi i tuoi oggetti di scena dovrebbero essere ancora trovati. La ragione per cui sta cercando gli oggetti di scena francesi riguarda le impostazioni locali da qualche parte nell'app. Potrebbe essere da browser, JVM, applicazione.

Si può cercare di aggiungere la seguente, per forzare il locale di inglese:

<bean class="org.springframework.web.servlet.i18n.FixedLocaleResolver" p:defaultLocale="en"/> 
+0

Grazie al litio. Come dici tu dovrebbe tornare a 'application.properties' quindi se cambio il nome del file in' application_fr.properties' o aggiungo il codice che hai suggerito, ho ancora l'errore ... Qualche altra idea? – balteo

+0

Beh, non è un errore, è un messaggio di debug. Potrebbe comportarsi correttamente. Stai riscontrando valori di proprietà errati? Inoltre, dovresti assicurarti che application.properties esista a prescindere da cosa. Quindi è possibile eseguire una copia di application.properties su application_fr.properties. – Solubris

+0

Ummm. Non vedo cosa intendi per: ** Inoltre, dovresti assicurarti che application.properties esista a prescindere da cosa. Quindi potresti fare una copia di application.properties su application_fr.properties ** Avendo application_fr.properties e application.properties? Ci ho già provato ... – balteo