thymeleaf Localization


Example

  1. Create files for your messages
 messages.properties   
 messages_en.properties
 messages_fr.properties   
 ...
  1. Write messages in this files like this

header.label.title=Title

  1. Configure path to this files (in this case in folder D:/project/messages) in application properties like:
messages.basename.path=D:/project/messages/messages
  1. Configure MessageSource
@Value("${messages.basename.path}")
private String messagesBasename;

@Bean
public MessageSource messageSource() {
       ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
       messageSource.setFallbackToSystemLocale(false);
       messageSource.setBasenames("file:" + messagesBasename);
       return messageSource;
   }
  1. Use messages on pages

<p th:text="#{header.label.title}">Title</p>