...
Permalink to this page: https://cwiki.apache.org/confluence/x/liklBg
Questions
- Why
- How
- Troubleshooting
Answers
Why
Anchor | ||||
---|---|---|---|---|
|
...
- Set
URIEncoding="UTF-8"
on your <Connector> inserver.xml
. References: Tomcat 7 HTTP Connector, Tomcat 7 AJP Connector, Tomcat 8.5 HTTP Connector, Tomcat 8.5 AJP Connector. - Set the default request character encoding either in the Tomcat
conf/web.xml
file or in the web appweb.xml
file; either by setting<request-character-encoding>
(for applications using Servlet 4.0 / Tomcat 9.x+) or by using a character encoding filter. - Change all your JSPs to include charset name in their contentType. For example, use
<%@page contentType="text/html; charset=UTF-8" %>
for the usual JSP pages and<jsp:directive.page contentType="text/html; charset=UTF-8" />
for the pages in XML syntax (aka JSP Documents). - Change all your servlets to set the content type for responses and to include charset name in the content type to be UTF-8. Use
response.setContentType("text/html; charset=UTF-8")
orresponse.setCharacterEncoding("UTF-8")
. - Change any content-generation libraries you use (Velocity, Freemarker, etc.) to use UTF-8 and to specify UTF-8 in the content type of the responses that they generate.
- Disable any valves or filters that may read request parameters before your character encoding filter or jsp page has a chance to set the encoding to UTF-8. For more information see https://www.mail-archive.com/users@tomcat.apache.org/msg21117.html.
...