Wieder seltsamen Kodierungsproblem UTF-8

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wieder seltsamen Kodierungsproblem UTF-8

    Hallo Leute,

    ich habe ein seltsames Kodierungsproblem, bei dem ich die Ursache nicht ausmachen kann. Deshalb weiß ich noch nicht genau ob der Beitrag im XML-Forum gut untergebracht ist, da es genauso ein JAVA-, Linux- oder Apacheproblem sein kann.

    Mittels einer XSLT-Datei und Java mit Saxon überführe ich eine XML-Datei in HTML und einigen Javscript-Dateien. Vorweg sei gesagt, einige Javscript-Dateinamen beginnen mit Umlauten. Ich habe überall, wo möglich, die Kodierung auf UTF gestellt (XSLT-Datei, Ausgabeformat mit result-document etc.)

    So, das Problem:
    Unter Windows funktioniert alles einwandfrei. Die Dateien werden erstellt, auch die, die mit einem Umlaut anfangen. Der Browser erkennt korrekt die Kodierung UTF und zeigt alles sauber an.

    Unter Linux funktionieren einige Sachen, andere nicht. Die JS-Dateien, die mit Umlauten beginnen, werden nicht korrekt erstellt (ä.js wird zu ?.js) Der Browser erkennt bei den erstellten HTML-Seiten nicht das Format UTF sondern ISO (Meta-Angabe ist gesetzt). Wenn ich eine der vorhandenen JS-Dateien im Browser direkt aufmachen (also so, dass ich den Quelltext sehe) wird bei diesen Dateien UTF erkannt, aber wie gesagt nicht bei den HTML-Dateien. Seltsamer Weise werden in den HTML-Seiten die Umlaute etc. korrekt dargestellt.

    Ich hatte auch schonmal das Problem, dass unter Linux UTF nicht erkannt wird UND die Umlaute NICHT richtig dargestellt wurden. Das Problem habe ich behoben, indem ich in den XSLT-Dateien das Ausgabeformat von XML auf HTML gestellt habe. Damals war das Problem aber auch unter Windows und nicht nur unter Linux. Außerdem bei ALLEN Dateien, also auch bei JS. Die Dateien, die mit Umlauten beginnen wurden auch schonmal erstellt unter Linux, habe aber seit dem nichts weiter verändert.

    Linux ist auf UTF eingestellt (Locale). Im Apache habe ich schon probiert "AddCharset UTF-8 .html" und "AddDefaultCharset UTF-8". Hatt alles nix gebracht.

    Achso, das verrückteste ist, wenn ich eine der HTML-Seiten, die unter Linx erstellt wurden herunterlade und in meinen Windows Apache ablege, DANN wird UTF vom Browser erkannt. Da aber schon bei der Transformation die JS-Dateien mit Umlaut nicht erstellt werden, kann ich mir eigentlich nicht vorstellen, dass es am Apache liegt, da dieser mit der Transformation ja noch nichts zu tun hat.

    Dazu jemand eine Idee? (Vorausgesetzt es liest überhaupt jemand diesen Roman ;-)

    Vielen, vielen Dank im Voraus
    Schöne Grüße
    Axel

  • #2
    Hi nochmal,

    die Browsererkennung geht jetzt wieder (bevor gefragt wird warum: Keeeine Ahnung )
    Aber das andere Problem bleibt bestehen. Es werde keine Javascript Dateien mehr angelegt, die mit einem Umlaut beginnen. Das ist aber jetzt ein Linux Problem, denke ich (Verschieben??).

    Selbst wenn ich über putty auf dem Linuxrechner eine Datei anlege, z.B. ä.js und danach ls mache, steht dort ?.js. Schau ich dann über WinSCP in das Verzeichnis, sehe ich wiederum ä.js.
    Auch mit ls --show-control-chars sehe ich die Umlaute. ABER nur bei den per Putty angelegten Dateien. Es ist mir im Moment nicht möglich über XSLT Dateien mit Umlauten anzulegen. Das ging aber schon

    Der Befehl locale zeigt überall de_DE.UTF-8

    Dazu noch jemand eine Ahnung?

    Vielen Dank im Voraus
    Schöne Grüße
    Axel

    Kommentar

    Lädt...
    X