[Squeak-ev] image encoding ?

Norbert Hartl norbert at hartl.name
Mit Apr 23 10:37:25 UTC 2008


On Wed, 2008-04-23 at 11:26 +0200, Edwin Buehler wrote:
> Hallo,
> 
> 
> ich habe ein Problem mit der utf-8 Kodierung in meinem Image.

> 
> Ich habe ein mir neues Image (basierend auf v3.9) aufgebaut mit allen
> Teilen die ich brauche. Danach habe ich mit Monticello
> auch meinen Code eingeladen. Zunächst schien es das alle richtig
> funktioniert.
> Alle Umlaute werden richtig mit der Seasideapplication auf der
> Webseite dargestellt. Die Strings kommen dabei entweder aus einer
> UTF-8 
> kodierten postgres Datenbank oder aus einer Übersetzungstabelle vom
> LanguageEditor aber nicht aus.
> 
> 
> Wenn ich nun aber die Datenbank lösche und die mit GLORP neu erzeugte
> mit Daten füllen will, dann führen die Umlaute aus dem Smalltalk code
> zu einer Fehlermeldung von postgres: "ERROR:  invalid byte sequence
> for encoding "UTF8": 0xfc"
> 
> 
> Ändere ich in meinem neuen Image eine Methode die mir Daten für die DB
> erzeugt und übertrage meinen Code mit Monticello auf
> mein altes Images, dann werden die Strings mit Umlauten im Code wieder
> als utf-8 erkannt. Aber sie werden nicht richtig auf der Webseite
> angezeigt.
> 
> 
> Muß ich in meinem Image die Kodierung einstellen ? 
> 
> 
> Im Internet und den Squeaklisten konnte ich nichts zu meinem Problem
> finden.
> 

Dann hast du mein Posting zu genau diesem Problem nicht gefunden :) [1]
Die ganze Geschichte hat nichts mit der Kodierung in deinem Image zu
tun, sondern mit den Übergabestellen zwischen Image und der Aussenwelt.
Derer gibt es vier. 1.) aus dem Web 2.) zur Datenbank 3.) von der 
Datenbank und 4.) ins Web. Wenn du WAKomEncoded als Webserver benutzt,
dann hast du 1.) und 4.) schon erschlagen. Wenn du meine PostgresV2 
Version benutzt (PostgresV2-noha.8) dann sind 2.) und 3.) auch gefixt.
Das Entscheidende hier ist nicht, welches Encoding deine Datenbank zur
Speicherung benutzt, sondern welches Encoding squeak und postgres zur
Kommunikation untereinander benutzen. 

[1]
http://lists.squeakfoundation.org/pipermail/seaside/2007-May/012120.html

Ich hoffe, das hilft.

Norbert