Tôi đã tạo một ứng dụng web Khởi động Spring sử dụng Thymeleaf làm công cụ tạo mẫu. Tôi đã cấu hình MessageSource
để tìm kiếm các tin nhắn trong một thư mục con:Làm thế nào để hiển thị các tin nhắn trong Thymeleaf và Spring Boot?
@Bean
public MessageSource messageSource() {
final ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("i18n/messages");
messageSource.setFallbackToSystemLocale(false);
messageSource.setCacheSeconds(0);
return messageSource;
}
Trong thư mục này, tôi tạo ra các tập tin messages_de.properties
với nội dung ticket.type.BUG=Fehler
. Trong mẫu của tôi, tôi cố gắng để hiển thị dòng chữ như thế này:
<p th:text="#{ticket.type.BUG}">BUG</p>
Nhưng khi trang được trả lại, tôi nhận được như sau:
<p>??ticket.type.BUG_de_DE??</p>
tôi thiếu gì? Tôi có phải cấu hình thêm bất kỳ hạt cà phê nào không?
P.S .:
Trên trang 'phía máy chủ' Tôi có thể để có được những thông điệp bằng MessageSource#getMessage("ticket.type.BUG", null, Locale.GERMANY)
.
Điều này thật thông minh. Mặc dù 'spring.messages.basename' chỉ đề cập đến tiền tố cho mỗi tệp. Không biết nó bao gồm các thư mục. – Incognito
Tôi có cùng một vấn đề và có cấu hình này, nhưng điều này không làm việc cho tôi .. – Raw