DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=28875>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=28875 Multi-byte characters in default error page aren't printed out correctly. [EMAIL PROTECTED] changed: What |Removed |Added ---------------------------------------------------------------------------- Platform|Macintosh |All ------- Additional Comments From [EMAIL PROTECTED] 2004-07-20 07:38 ------- This problem isn't yet solved in Tomcat 5.0.27 release. It doesn't occur in 4.1.30 release, but always happens in 5.0.x release. Any multi-byte character is not correctly printed into response reporter, independently of the response locale setting. Therefore, it is impossible to read every multi-byte error messages which is displayed in default error page. (And many Japanese users are in trouble very much.) According to current ErrorReportValve source code, I have re-written my first proposed patch (see the following diff code). Please apply it. Index: jakarta-tomcat- catalina/catalina/src/share/org/apache/catalina/valves/ErrorReportValve.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat- catalina/catalina/src/share/org/apache/catalina/valves/ErrorReportValve.java,v retrieving revision 1.21 diff -u -w -r1.21 ErrorReportValve.java --- jakarta-tomcat- catalina/catalina/src/share/org/apache/catalina/valves/ErrorReportValve.java 27 Jun 2004 23:56:23 -0000 1.21 +++ jakarta-tomcat- catalina/catalina/src/share/org/apache/catalina/valves/ErrorReportValve.java 17 Jul 2004 20:59:20 -0000 @@ -284,19 +284,17 @@ try { - Writer writer = response.getReporter(); - - if (writer != null) { - - Locale locale = Locale.getDefault(); - try { response.setContentType("text/html"); - response.setLocale(locale); + response.setCharacterEncoding("utf-8"); } catch (Throwable t) { if (container.getLogger().isDebugEnabled()) container.getLogger().debug("status.setContentType", t); } + + Writer writer = response.getReporter(); + + if (writer != null) { // If writer is null, it's an indication that the response has // been hard committed already, which should never happen --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]