Rollers JDBCException ö,ä,ü …

Läuft bis heute stabil?

Zu früh gefreut, Weblogeintraege mit enthaltenen Sonderzeichen wie ö,ä,ü können nicht gespeichert werden. :-(

...
JDBCExceptionReporter:logExceptions - SQL Error: 0, SQLState: 01004
JDBCExceptionReporter:logExceptions - Data truncation: Data too long for column 'summary' at row 1
...

Lösung gefunden! :-)
Roller benötigt UTF-8, ältere MySQL Versionen sind auf Latin-1 voreingestellt.

Die Datenbank kann wie folgt von Latin-1 nach UTF-8 konvertiert werden.
Roller (bzw. Tomcat) sollte während der Konvertierung heruntergefahren werden.

1. Dump erzeugen

mysqldump DATENBANK -u USER -p >DATEINAME

2. Dump modifizieren
Suchen und Ersetzen im Datenbankdump nach „latin1“ durch „utf8“.
Am Anfang der Datei

use DATENBANK;

einfügen.

3. Dump konvertieren
Mit folgendem Befehl die Datei nach UTF-8 konvertieren.

iconv -f iso-8859-1 -t utf-8 DATEINAME

4. Dump einspielen

mysql -u USER -p <DATEINAME

Anschließend sollten Weblogeinträge mit Sonderzeichen erstellt werden können! :-)

Tags: , , ,

Hinterlasse eine Antwort