If you are developing applications for languages other than English, you probably realize that this can be a challenge – particularly with eastern ideographic languages such as Japanese and Chinese.  For a general overview of this, check out this System i Network article. For the technical details behind Unicode, check out this wikipedia article.

Fortunately CA Plex and WebClient take much of the pain out of Unicode development. Since WebClient is based on CA Plex panel designs, the first step is to make your model international aware by adding national language dimensions to your group model environment. This is documented in the CA Plex help, see the following section.

Working with National Languages
National languages are used to manage the translation of an application into different human languages. Examples of national languages are French, Spanish, American English, and British English. CA Plex automatically tracks all the text in your application that appears in the user interface.

Once you have your Plex model configured, you can start using national languages in WebClient. Two key points are to make sure your web server and database management package are set up to handle the character sets you are working with. Most modern database and web servers handle standard forms of double byte unicode such as UTF-8. Unicode extension B can be more of a challenge since extension B takes 4 bytes per character (note that CA Plex does not current support extension B). However, extension B is not required for most applications.

To enable international character sets in WebClient, there are two settings to be aware of.

First, set up UTF-8 as the encoding in WebClient:

In the latest version of J2eeProxy.prop file, there is a property named “servlet.encoding.httpbody=utf-8”. Delete “#” in front of the property name to use it.

If you are using Tomcat:

In Servers folder, expand Tomcat server folder and open server.xml. Add URIEncoding=”UTF-8″ in the connector element, for example
<Connector connectionTimeout=”20000″ maxThreads=”150″ port=”8080″ protocol=”HTTP/1.1″ redirectPort=”8443″ URIEncoding=”UTF-8″ />

Other Tips:

  • Make sure you are using the latest version of Plex, as Unicode support has been improved with 6.1.
  • Keep an eye out for the next Plex service pack which will likely contain other Unicode enhancements
  • Make sure you are using the latest version of WebClient 1.4.1r4
  • Unicode support has been tested with Derby and SQL Server. However, most databases support Unicode