I18n: Thymeleaf Umlaute


#1

Ich habe eine Spring Boot - Thymeleaf - Anwendung. Ich habe meine Anwendung zur Zeit auf Deutsch und Englisch laufen. In meiner message_de.properties habe ich ein Text “back=zurück”. Meine Layout HTML verfügt über

	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
	<meta charset="utf-8">	

beim Aufruf der Internetseite wird allerdings nicht “zurück” ausgegeben, sondern “zur?ck”.

Wie bekomme ich es hin das korrekt “zurück” ausgegeben wird?


Java Umlaute in JSF Page falsch dargestellt
#2

Die Datei muss selbst auch mit der UTF-8-Zeichenkodierung gespeichert werden. Man kann oft im Editor selbst einstellen, welche Zeichenkodierung zu verwenden ist.


#3

Es ist in UTF-8 gespeichert. Ich habe mich oben nicht korrekt ausgedrückt, sry. Nochmal ich habe eine Thymleaf - HTML Datei. Im sind die beiden obigen Metas angegeben. Hierzu habe ich eine Sprachdatei auf englisch und deutsch

src/main/resources/messages_de.properties
src/main/resources/messages_en.properties

In der HTML Datei gebe ich den Text mittels
span th:text="#{back}">Back

aus.

Aber anstelle von “zurück” wird “zur?ck” ausgegeben.


#4

Properties im passenden Encoding?

Transfer-Encoding passend gesetzt?


#5

Hey,

benutze die Kodierung für Umlaute. Am besten, du tust dieses in jeden Header deiner Properties, um es immer gleich parat zu haben. :slight_smile:

# ä - \u00e4
# Ä - \u00c4
# ö - \u00f6
# Ö - \u00d6
# ü - \u00fc
# Ü - \u00dc

viele Grüße
Steven


#6

Danke euch alle, konnte es jetzt beheben.


#7

Alle anderen, die das gleiche Problem haben und diesen Thread finden, würden sich sicher darüber freuen, zu erfahren, wie du das genau gelöst hast. Wäre toll, wenn du das noch kurz beschreiben könntest. :wink::+1:


#8

Ich habe mir ein Beispiel aus GitHub herausgesucht. Konkret war es bei mir der Fall https://github.com/springframeworkguru/sfg-thymeleaf-course / sfg-thymeleaf-course-i18n-code-assignment-complete.zip. Habe die message.properties und meine Anwendung increment-weise reinkopiert. Es funktioniert jetzt mit den Umlauten.