Download
FAQ
History
PrevHomeNext API
Search
Feedback
Divider

Registering Messages

If you create custom messages, you must make them available at application startup time. You do this in one of two ways: by queuing the message onto the FacesContext programmatically (as described in Performing Localization) or by registering the messages with your application using the application configuration resource file.

Here is the part of the file that registers the messages for the Duke's Bookstore application:

<application>
  <message-bundle>
    resource.ApplicationMessages
  </message-bundle>
  <locale-config>
    <default-locale>en</default-locale>
    <supported-locale>de</supported-locale>
    <supported-locale>fr</supported-locale>
    <supported-locale>es</supported-locale>
  </locale-config>
</application> 

This set of elements will cause your Application instance to be populated with the messages contained in the specified ResourceBundle.

The message-bundle element represents a set of localized messages. It must contain the fully qualified path to the ResourceBundle containing the localized messages--in this case, resources.ApplicationMessages.

The locale-config element lists the default locale and the other supported locales. The default locale is specified with the default-locale element. Each supported locale is specified with a separate supported-locale element.

The supported-locale and default-locale tags accept the lower -case, two-character codes as defined by ISO-639 (see http://www.ics.uci.edu/pub/ietf/http/related/iso639.txt). Make sure that your ResourceBundle actually contains the messages for the locales that you specify with these tags.

To access the localized message, the application developer merely references the key of the message from the resource bundle. See Performing Localization for more information.

Divider
Download
FAQ
History
PrevHomeNext API
Search
Feedback
Divider

All of the material in The J2EE(TM) 1.4 Tutorial is copyright-protected and may not be published in other works without express written permission from Sun Microsystems.