0

私は spring-data-rest を使用しており、注釈を使用して messages.properties を構成する必要があります。構成クラスで行ったことは、

@Bean public ReloadableResourceBundleMessageSource messageSource(){
    ReloadableResourceBundleMessageSource reloadableResourceBundleMessageSource = new ReloadableResourceBundleMessageSource();
    reloadableResourceBundleMessageSource.setBasename("messages");
    return reloadableResourceBundleMessageSource;
}

そして、 messages.propertyファイルのプロパティにアクセスしようとすると、

notnull.empty=rr is required.

なので、

ValidationUtils.rejectIfEmptyOrWhitespace(arg1, "rr", "notnull.empty", "test is required.");

私の検証クラスで。しかし、デフォルトのメッセージのみが受信され、デフォルトのメッセージを削除するとヌルが受信されます。アノテーションを使用して検証メッセージ プロパティ ファイルを構成することは可能ですか? スプリングは初めてなので、きっとわかりません。前もって感謝します。

4

1 に答える 1

1

問題は、メッセージ ファイルが見つからないことです。メソッドに正しい場所のパスを提供する必要がありますsetBasename。いくつかの方法がありますが、ここでは 2 つ紹介します。

1.プロジェクトルートからのパスを次のように使用します。

    reloadableResourceBundleMessageSource.setBasename("/WEB-INF/messages/messages")‌​;

2.クラスパス内のパスを次のように使用します。

    reloadableResourceBundleMessageSource.setBasename("classpath:/messages/messages")‌​;

サーバーはクラスパスからロードされたファイルをキャッシュするために使用し、メッセージファイルの変更をキャッチするのがより困難になるため、私は最初のものを好みます。

于 2014-03-26T11:38:03.147 に答える