Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Fixed formatting of code

1. JSP pages must include the header:

No Format
 <%@ page

...


 contentType="text/html; charset=UTF-8"

...


%> 

2. In the Catalina.bat (windows) catalina.sh (windows) apache$jakarta_config.com (OpenVMS), file there must be a switch added to the call to java.exe. The switch is:

...

3. For translation of inputs coming back from the browser there must be a method that translates from the browser's ISO-8859-1 to UTF-8. It seems to me that -1 is used in all regions as I have had people in countries such as Greece & Bulgaria test this and they always send input back in -1 encoding. The method which you will use constantly should go something like this:

No Format
  /**

...


  * Convert ISO8859-1 format string (which is the default sent by

...

 IE
  * to the UTF-8 format that the database is in.
  */
 public String toUTF8(String isoString)
 

...

{
  String utf8String = null;
  if (null != isoString && !isoString.equals(""))
 

...

 {
   try
   

...

{
    byte

...

[

...

] stringBytesISO = isoString.getBytes("ISO-8859-1");
    utf8String = new String(stringBytesISO, "UTF-8");
   

...

}
   catch(UnsupportedEncodingException e)
   

...

{
    // As we can't translate just send back the best guess.
    System.out.println("UnsupportedEncodingException is: " +

...


e.getMessage());

...


    utf8String = isoString;

...


   }
  }
  else
  {
   utf8String = isoString;
  }
  return utf8String;
 } 

I have found that these three steps are all that is necessary to make your site accept any language that UTF-8 can work with. I extend my thanks to those of you on the Tomcat users list who helped me find these little gems.

...