Spring,Thymeleaf和本地化字符串

Chr*_*nis 6 netbeans spring-mvc thymeleaf

我是使用Spring和Thymeleaf的新手,我无法弄清楚我的本地化.properties文件的位置.我有这个豆子:

@Bean
public MessageSource messageSource() {

    ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
    messageSource.setBasenames("classpath:messages/messages", "classpath:messages/validation");
    // if true, the key of the message will be displayed if the key is not
    // found, instead of throwing a NoSuchMessageException
    messageSource.setUseCodeAsDefaultMessage(false);
    messageSource.setDefaultEncoding("UTF-8");
    // # -1 : never reload, 0 always reload
    messageSource.setCacheSeconds(0);

    return messageSource;
}
Run Code Online (Sandbox Code Playgroud)

在login.html内:

    <p th:text="#{messages.hello}">Welcome to our site!</p>
Run Code Online (Sandbox Code Playgroud)

内部messages_en.properties:

    messages.hello=Apparently messages work
Run Code Online (Sandbox Code Playgroud)

我的项目结构:

结构体

我已经尝试在WEB-INF中创建一个名为messages的文件夹,但显然我没有得到正确的答案.有任何想法吗?

编辑:使用与消息相关的代码更新了问题.

小智 6

我知道这个人已经老了.但我已经找到了解决方案,并得到了这篇文章.
我自己找到了一个解决方案,其他人也遇到了同样的问题.

所以这就是我解决它的方式:

注入MessageSourceSpringTemplateEngineBean.

@Bean
public SpringTemplateEngine templateEngine(MessageSource messageSource, ServletContextTemplateResolver templateResolver) { 
    SpringTemplateEngine engine = new SpringTemplateEngine();
    engine.setTemplateResolver(templateResolver);
    engine.setMessageSource(messageSource);
    return engine;
}
Run Code Online (Sandbox Code Playgroud)

现在,Thymeleaf知道你的MessageSource并评估你的表情.