Configuring application servers for UCS Transformation Format

You can use the client.encoding.override=UTF-8 JVM argument to configure an application server for UCS Transformation Format. This format enables an application server to handle most character encodings, including specialized mathematical and technical symbols.

About this task

The client.encoding.override=UTF-8 argument is provided for backwards compatibility. You should only specify this argument if you require multiple language encoding support in the administrative console and there is no other way for you to set the request character encoding required to parse post and query strings.
Before configuring an application server for UCS Transformation Format, you should try to either:
  • Explicitly set the ServletRequest Encoding inside of the JSP or Servlet that is receiving the POST and or query string data, which is the preferred J2EE solution, or
  • Enable the autoRequestEncoding, option, which uses the client's browser settings to determine the appropriate character encoding. Older browsers might not support this option.
Avoid trouble: If the client.encoding.override=UTF-8 JVM argument is specified, the autoRequestEncoding option does not work even if it is enabled. Therefore, when an application server receives a client request, it checks to see if the charset option is set on the content type header of the request:
  1. If it is set, the application server uses the content type header for character encoding.
  2. If it is not set, the application server uses the character encoding that is specified for the default.client.encoding system property.
  3. If neither charset nor the default.client.encoding system property is set, the application server uses the ISO-8859-1 character set.

The application server never checks for an Accept-Language header. However, if the autoRequestEncoding option is working, the application server checks for an Accept-Language header before checking to see if a character encoding is specified for the default.client.encoding system property.

To configure an application server for UCS Transformation Format:

Procedure

  1. In the administrative console, click Servers > Server Types > WebSphere application servers, and select the server that you want to enable for UCS Transformation Format.
  2. [z/OS] Then, in the Server Infrastructure section, click Java and process management > Process definition > Control > Java virtual machine.
  3. [AIX Solaris HP-UX Linux Windows][IBM i] Then, in the Server Infrastructure section, click Java and process management > Process definition > Java virtual machine.
  4. Specify -Dclient.encoding.override=UTF-8 for the Generic JVM Arguments property, and click OK.
    When this argument is specified, UCS Transformation Format is used instead of the character encoding that would be used if the autoRequestEncoding option was in effect.
    Remember: The client.encoding.override=UTF-8 JVM argument overrides encoding options only for the request object. The response object is not affected.
  5. Click Save to save your changes.
  6. Restart the application server.

Results

The application server uses UCS Transformation Format for encoding.