Ich habe eine Spring Boot-Webanwendung erstellt, die Thymeleaf als Vorlage verwendet. Ich baut die MessageSource
für Nachrichten in einem Unterordner suchen:Wie werden Meldungen in Thymeleaf und Spring Boot angezeigt?
@Bean
public MessageSource messageSource() {
final ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
messageSource.setBasename("i18n/messages");
messageSource.setFallbackToSystemLocale(false);
messageSource.setCacheSeconds(0);
return messageSource;
}
In diesem Ordner erstellt ich die Datei messages_de.properties
mit dem Inhalt ticket.type.BUG=Fehler
. In meiner Vorlage versuche ich, den Text wie folgt angezeigt:
<p th:text="#{ticket.type.BUG}">BUG</p>
Aber wenn die Seite gerendert wird, erhalte ich folgendes:
<p>??ticket.type.BUG_de_DE??</p>
Was bin ich? Muss ich zusätzliche Beans konfigurieren?
P. S .:
Auf der 'Server-Seite:' Ich bin in der Lage, die Nachricht zu erhalten MessageSource#getMessage("ticket.type.BUG", null, Locale.GERMANY)
verwenden.
Das ist schlau. Ich denke, 'spring.messages.basename' bezieht sich nur auf das Präfix für jede Datei. Wusste nicht, dass es die Ordner enthielt. – Incognito
Ich habe das gleiche Problem und hat diese Konfiguration, aber das funktioniert nicht für mich .. – Raw