J'utilise Tomcat 6.0.32 dans Windows 7. Dans un servlet très simple, à l'intérieur de la méthode init, j'imprime:
System.out.println(Charset.defaultCharset());
La sortie est:
windows-1253
Pour autant que je sache, c'est ainsi que Tomcat démarre dans la JVM, car j'imprime la même chose en autonome Java et j'obtiens "UTF8" en réponse.
Alors, comment puis-je changer cela en UTF-8?
merci
Créez simplement un fichier setenv.bat dans le répertoire Tomcat/bin avec le contenu suivant:
set "Java_OPTS=%Java_OPTS% -Dfile.encoding=UTF8"
Vous pouvez également ajouter ce paramètre dans le gestionnaire de services Windows Tomcat 7.0.
Pour Tomcat fonctionnant en tant que service Windows, ni% Java_OPTS% ni les réponses setenv.bat ne fonctionnent dans mon cas.
J'ai défini l'option "-Dfile.encoding = UTF8" dans le registre:
"HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\tomcatstackTomcat\Parameters\Java -> Options *
Alors ça marche.
Essayez de définir la variable d'environnement (Windows) Java_TOOL_OPTIONS
à -Dfile.encoding=UTF-8
et démarrez le Tomcat Server
.
Obtiendra plus d'idée de ce lien: Réglage de la valeur par défaut Java encodage de caractères