bea.com | products | dev2dev | support | askBEA

Download Docs | Site Map | Glossary
Search

Internationalization Guide

Overview of Internationalization for WebLogic Server

The following sections provide an overview of localization and internationalization:

- About Internationalization and Localization Standards

- Understanding Localization for WebLogic Server

- Understanding Message Catalogs

- Understanding Java Interfaces for Internationalization

- Main Steps for Creating an Internationalized Message

About Internationalization and Localization Standards

BEA has adopted the World Wide Web Consortium's (W3C) recommendations for standard formats and protocols that are usable worldwide in all languages and in all writing systems. These standards are part of the Java internationalization Application Program Interfaces (APIs) that are used by WebLogic Server. Internationalization (I18N) refers to the preparation of software so that it behaves properly in multiple locations. Localization (L10N) is the use of locale-specific language and constructs at run time.

Internationalization of textual data in WebLogic Server is provided through message catalogs. WebLogic Server supports message catalogs for log messages as well as simple text. Log messages contain data that is written to the log file. This data is predominantly dynamic and contains information that is specific to the current state of the application and system. When merged with text in a localized log message catalog, this data results in well-formatted, localized messages that describe the error condition in the language of the user. The output sent to the console is simple text. As with log messages, simple text can be merged with dynamic data.

The information covered in this guide addresses only the internationalization of textual data.

Understanding Localization for WebLogic Server

Localization covers not only language, but collation, date and time formats, monetary formats, and character encoding. Messages that are logged to the WebLogic Server error log can be localized to meet your particular requirements.

WebLogic Server internationalization supports localization of two types of data:

- Log messages—Log messages are informational messages that are written to the server log, and may also contain error messages if the appropriate message arguments are included in the message definition.

- Simple text—Simple text is any text other than log messages and exceptions that the server must display, such as the output from a utility. Examples of simple text include usage messages, graphical user interface (GUI) labels, and error messages.

Understanding Message Catalogs

All internationalized text is defined in message catalogs, each of which defines a collection of log messages or simple text. To create an internationalized message, you externalize all message strings in a message catalog so that the strings can be easily converted to multiple locales without changing or recompiling the code. The application code supplies run-time values to the logging methods. The logging methods merge the code with the message string in the catalog per the current locale. And the application code then prints a localized message in the log files.

There are three types of message catalogs:

- Log message catalogs—Collections of log messages.

- Simple text catalogs—Collections of simple text messages.

- Locale message catalogs—Collections of locale-specific messages corresponding to a top-level log message or simple text catalog.

Message IDs in log message catalogs or locale message catalogs are unique across all log message or locale message catalogs. Within the message catalog file, each localized version of the message is assigned a unique message ID and message text specific to the error. Ideally, a message is logged from only one location within the system so that a support team can easily find it. Message IDs in simple text catalogs are unique within each simple text catalog.

Refer to Using Message Catalogs with BEA WebLogic Server for more detailed information about message catalogs.

Understanding Java Interfaces for Internationalization

WebLogic Server uses the Java internationalization interfaces for providing internationalization and localization. In addition to understanding how WebLogic Server handles internationalization, users should be familiar with the Java internationalization interfaces and the following classes included in the Java Development Kit (JDK):

Class | Description
--- | ---
java.util.Locale | Represents a specific geographical, political, or cultural region.
java.util.ResourceBundle | Provides containers for locale-specific objects.
java.text.MessageFormat | Produces concatenated messages in a language-neutral way.

Main Steps for Creating an Internationalized Message

The following steps describe how you create an internationalized message for use with WebLogic Server:

1. Create or edit a top-level log catalog or simple text catalog by defining the messages in the catalog. For details, see Using the BEA WebLogic Server Message Editor

   In addition to message text, include information about the type and placement of any run-time values that the message contains.

2. Run i18ngen to validate the catalog you created or edited in Step 1 and generate runtime classes.

   The generated classes contain a method for each message. The method is defined according to information specified in the message catalog entry. The methods include Logger or TextFormatter methods, depending on the type of catalog. For details, see 18ngen Utility

3. Create locale-specific catalogs as required for the message catalog you created in Step 1.

4. Run l10ngen to process the locale-specific catalogs.

5. Instrument the application to use the Logger or TextFormatter methods you generated in Step 2. When the application logs or returns a message, the message is written using the localized version of the text according to the Logger or TextFormatter methods used.

These steps are described in detail in the following topics. For more detailed information, including an overview of the logging subsystem and a description of log message parts, see "Using Log Messages to Manage WebLogic Servers" in the WebLogic Server Administration Guide.