GWT et encoding UTF-8

Le framework ajax GWT est conçu pour fonctionner avec des données UTF-8. Cela peut avoir quelques conséquences pour les applications internationales au niveau des caractères spéciaux (accents français par exemple…).

Ayant butté longuement sur un problème de cette nature, je vous en livre la solution ici.

Mon application GWT réalise des appels RPC sur un serveur Tomcat. La première chose à faire, comme cela est bien précisé sur divers sites, est d’encoder systématiquement tous les fichiers sources de votre application en UTF-8, et non pas en Cp1252 par exemple. Dans Eclipse : click droit sur le projet dans le Package Explorer, puis Properties, puis Resource, sélectionnez Text file encoding : Other : UTF-8. Sur un autre IDE ou éditeur de fichier, vous trouverez l’équivalent.

La deuxième chose à faire, concerne la compilation du code pour le serveur (pour les servlets appelées par GWT) : il faut préciser javac -encoding utf8

Personnellement, j’utilise ant pour mes compilations, et donc la commande suivante :

<javac srcdir="${src.dir}" destdir="${dest.dir}" classpathref="server.lib" mce_href="server.lib" encoding="UTF-8">
<include name="..." />
</javac>


Commentaires

2 réponses à “GWT et encoding UTF-8”

  1. Bonjour,

    C’est un super article, petit problème, seulement: comment spécifier l’encodage des servlets sous eclipse?
    Je peux bien sur ecrire un ant mais je prefere utiliser mon eclipse pour compiler et même pour mettre en ligne sur google App engine…

    Cordialement,
    Zied Hamdi

  2. Merci ! Recherche google > problème réglé ! 🙂

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.