web-dev-qa-db-fra.com

Changer Charset.defaultCharset de Tomcat dans Windows

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

18
nonouco

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"
39
nonouco

Vous pouvez également ajouter ce paramètre dans le gestionnaire de services Windows Tomcat 7.0.

screenshot

de blog du Dr James Bayley

14
James Bayley

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.

6
lpi314

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

2
UVM