Spring Boot @Pattern自定义消息不起作用

时间:2018-09-12 18:54:47

标签: spring-boot

我只是想将自定义消息添加到我从this repo开始从事的项目的@Pattern注释中。

Category.java类(如下所示)在@Size批注上有一条自定义消息,该消息可以按预期工作,但是我无法获取该消息,以使@Pattern正常工作。当我运行该应用程序时,尽管进行了许多努力来使它使用来自messages.properties的本地消息,但系统默认消息仍显示为“ not not null”。我也尝试过直接在注释中直接键入一条消息,但是默认消息仍然存在。

我在网上查看的最新资源甚至都没有提及@Pattern注释,而且我发现的较旧资源似乎表明我的文件(目前存在)应该可以使用。我知道这是一个基本问题,但是任何帮助将不胜感激。

Category.java:

@NotNull
@Size(min = 3, max = 12, message = "{category.name.size}")
private String name;

@NotNull
@Pattern(regexp = "#[0-9a-fA-F]{6}", message = "{category.colorCode.pattern}")
private String colorCode;

messages.properties:

#Custom message for Category size
category.name.size = The category name must be {min} to {max} characters in length.

#Custom message for Category colorCode
category.colorCode.pattern = You must select a category color. 

1 个答案:

答案 0 :(得分:0)

放置

@Bean
public MessageSource messageSource() {
    ReloadableResourceBundleMessageSource messageSource
            = new ReloadableResourceBundleMessageSource();
    messageSource.setBasename("classpath:messages");
    messageSource.setDefaultEncoding("UTF-8");
    return messageSource;
}

并确保将message.properties文件放在资源文件夹中