Как я могу изменить кодировку по умолчанию для сервера / контейнера tomcat?
У меня проблемы с кодировкой символов моего веб-приложения, и я хотел бы узнать, как я могу изменить кодировку tomcat по умолчанию на производственном сервере Linux, чтобы она соответствовала кодировке cp 1252 сервера dev в Windows (или, по крайней мере, экспериментально) с другой кодировкой, пока не найду правильную).
Спасибо
2 ответа
Добавьте это в ваш скрипт catalina.sh:
set JAVA_OPTS=-Djavax.servlet.request.encoding=Cp1252 -Dfile.encoding=Cp1252
Также в conf/server.xml вы хотите внести это изменение, чтобы кодировка URI была установлена соответственно:
<Connector port="8080" URIEncoding="Cp1252"/>
Если вы используете фильтры сервлетов, вы можете добавить вызов response.setCharacterEncoding("Cp1252"); на все ответы. Если ответ содержит символы, то будет использоваться выбранная вами кодировка.
response.setCharacterEncoding ("CP1252");
Пожалуйста, смотрите https://tomcat.apache.org/tomcat-8.5-doc/servletapi/javax/servlet/ServletResponse.html