2012-07-05 17 views
13

estoy usando Tomcat 6.0.32 en Windows 7. Dentro de una muy simple servlet, dentro del método init, estoy de impresión:Cambio Tomcat en Windows

System.out.println(Charset.defaultCharset()); 

la salida es:

windows-1253 

por lo que yo entiendo que esta es la forma de arrancar Tomcat en la JVM ya que estoy imprimiendo en la misma clase de java independiente y me sale "UTF-8" como respuesta.

Entonces, ¿cómo puedo cambiar esto a UTF-8?

gracias

+0

¿has probado 'request.getCharacterEncoding();'? Vea lo que imprime, de todos modos puede cambiar la codificación de caracteres ... pero varía según el requisito. Mira esta página wiki http://wiki.apache.org/tomcat/FAQ/CharacterEncoding#Q1 –

+0

No puedo acceder a la solicitud porque estoy trabajando dentro del método init. En cualquier caso, este no es un problema de solicitud-respuesta, ya que necesito tener codificación UTF8 para leer archivos y no enviar respuestas en codificación UTF8. – nonouco

Respuesta

34

Basta con crear un archivo setenv.bat dentro del directorio TOMCAT/bin con el siguiente contenido:

set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF8" 
+0

Buen hallazgo. He votado su respuesta. – UVM

+0

gracias por el +1! – nonouco

+0

@nonouco gracias! +1! –

1

Intente configurar el entorno (Windows) Variable JAVA_TOOL_OPTIONS--Dfile.encoding=UTF-8 e iniciar el Tomcat Server.

obtendrá más idea desde este enlace: Setting the default Java character encoding

+0

Desafortunadamente esto no está funcionando. Setting -Dfile.encoding = UTF-8 es el enfoque correcto, pero no diluyo que tomcat agregue JAVA_TOOL_OPTIONS a JAVA_OPTS. En cualquier caso, encontré la solución. Ver abajo – nonouco

+0

No funcionó para mí –

4

Para Tomcat se ejecuta como un El servicio de Windows ni% JAVA_OPTS% ni las respuestas de setenv.bat funcionan en mi caso.

puedo configurar la opción "-Dfile.encoding = UTF-8" en el registro:

"HKEY_LOCAL_MACHINE \ SOFTWARE \ Apache Software Foundation \ Procrun 2,0 \ tomcatstackTomcat \ Parameters \ Java -> Opciones *

Entonces funciona.

13

también puede agregar esta configuración en el Tomcat gestor de servicios 7.0 de windows.

screenshot

de Dr James Bayley's blog

Cuestiones relacionadas