4

WEB-INF/i18n ディレクトリの下に 2 つのファイルがあります。

  • アプリケーションのプロパティ
  • メッセージのプロパティ

ReloadableResourceBundleMessageSource Bean を次のように適切に構成しました (spring mvc):

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

それでも、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

誰でもアドバイスできますか?プロパティ ファイルをクラスパスに移動し、それに応じて構成を変更することもできますが、何が起こっているのかを理解したいと思います。

4

1 に答える 1

1

ログメッセージには、次のように記載されています:application_fr

_frに注意してください。これは、フランス語版のapplication.properties(application_fr.properties)を検索しようとしていることを意味します。フランス語のプロパティが見つからない場合は、デフォルト(application.properties)にフォールバックする必要があるため、小道具は引き続き見つかります。フランス語の小道具を探している理由は、アプリのどこかにあるロケール設定に関係しているためです。ブラウザ、JVM、アプリケーションからのものである可能性があります。

以下を追加して、ロケールを英語に強制することができます。

<bean class="org.springframework.web.servlet.i18n.FixedLocaleResolver" p:defaultLocale="en"/>   
于 2012-09-04T20:21:06.633 に答える