我的 web 应用程序的字符编码出现了问题,我想知道如何更改 Linux 生产服务器上 tomcat 的默认编码,以匹配 Windows 上开发服务器的 cp 1252 编码(或者至少尝试不同的编码,直到找到正确的编码)。
谢谢
答案1
将其添加到您的 catalina.sh 脚本中:
set JAVA_OPTS=-Djavax.servlet.request.encoding=Cp1252 -Dfile.encoding=Cp1252
您还需要在 conf/server.xml 中进行以下更改,以便相应地设置 URI 编码:
<Connector port="8080" URIEncoding="Cp1252"/>
答案2
如果您使用 servlet 过滤器,则可以向所有响应添加对 response.setCharacterEncoding("Cp1252"); 的调用。如果响应包含字符,则将使用您选择的编码。
响应.设置字符编码(“Cp1252”);