3

I'm having problems with the character encoding of my webapp and would like to know how I can go about changing the default encoding of tomcat on the Linux production server to match the cp 1252 encoding of the dev server on windows (or at least experiment with different encoding until I can find the right one).

Thanks

Corey S.
  • 2,379
  • 1
  • 18
  • 23
Dark Star1
  • 1,355
  • 6
  • 21
  • 37

2 Answers2

5

Add this to your catalina.sh script:

set JAVA_OPTS=-Djavax.servlet.request.encoding=Cp1252 -Dfile.encoding=Cp1252

Also in conf/server.xml you want to make this change so the URI encoding is set accordingly:

<Connector port="8080" URIEncoding="Cp1252"/>
Stephan
  • 417
  • 1
  • 5
  • 13
2

If you use servlet filters you could add a call to response.setCharacterEncoding("Cp1252"); to all responses. If the response contains characters then your chosen encoding will be used.

response.setCharacterEncoding("Cp1252");

Please see https://tomcat.apache.org/tomcat-8.5-doc/servletapi/javax/servlet/ServletResponse.html#setCharacterEncoding(java.lang.String)

robk
  • 21
  • 2