Ответ 1
Просто создайте файл setenv.bat внутри каталога TOMCAT/bin со следующим содержимым:
set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF8"
Я использую tomcat 6.0.32 в Windows 7. Внутри очень простого сервлета, внутри метода init, я печатаю:
System.out.println(Charset.defaultCharset());
Вывод:
windows-1253
Насколько я понимаю, это то, как tomcat запускается в JVM, так как я печатаю то же самое в автономном классе java, и я получаю "UTF8" в качестве ответа.
Итак, как я могу изменить это на UTF-8?
спасибо
Просто создайте файл setenv.bat внутри каталога TOMCAT/bin со следующим содержимым:
set "JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF8"
Вы также можете добавить этот параметр в диспетчер служб Windows Tomcat 7.0.
from Блог Джеймса Бейли
Для Tomcat, работающего как служба Windows, ни один% JAVA_OPTS%, ни ответы setenv.bat не работают в моем случае.
Я установил в реестре параметр "-Dfile.encoding = UTF8":
"HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\tomcatstackTomcat\Parameters\Java → Параметры *
Затем он работает.
Попробуйте установить переменную среды (Windows) JAVA_TOOL_OPTIONS
на -Dfile.encoding=UTF-8
и запустите Tomcat Server
.
Подумайте по этой ссылке: Установка кодировки символов Java по умолчанию