When your application will be viewed by users in multiple countries, you can configure your JSF page or application to use different locales so that it displays the correct language for the language setting of a user's browser. For example, if you know your page will be viewed in Italy, you can localize your page so that when a user's browser is set to use the Italian language, text strings in the browser page appear in Italian.
Additionally, locale selection applies special formatting considerations applicable to the selected locale. For example, whether information is typically viewed from left to right or right to left, how numbers are depicted (such as monetary information), and the like.
When you develop a multi-language portal:
Make use of the inherent multi-language support in WebCenter Services. For more information, see Section 69.1, "Language Support in ADF Faces Components."
Put all resources in resource bundles, provide alternate-language resource bundles, and code your application to respond to users' language selection. For more information, see Section 69.2, "Using Resource Bundles to Support Multiple Languages."
Make sure your database character set supports all required languages.
Use number, date, and time formatting that supports all required locales.
Use linguistic sort parameters to get the correct sort ordering for locale.
For example, the same characters have different sort ordering in French and Canadian-French.
Write web pages that correctly render left to right or right to left (for example, if Arabic languages must be supported).
For more guidelines on globalization, see "Internationalizing and Localizing Pages" in the Oracle Fusion Middleware Web User Interface Developer's Guide for Oracle Application Development Framework or the Oracle Database Globalization Support Guide.
Some ADF Faces components include text that is part of the component, for example the
af:table component uses the resource string
af_table.LABEL_FETCHING for the message text that is displayed in the browser while the table is fetching data during the initial load of data or while the table is being scrolled. Oracle JDeveloper provides translations of these text resources into 28 languages. Therefore, when using the supplied components, you do not need to perform additional steps to translate the text in the components.
For any text you add to a component, for example if you define the label of an
af:commandButton component by setting the text attribute, you must provide a resource bundle that holds the actual text, create a version of the resource bundle for each locale, and add a
<locale-config> element to define default and support locales in the application's faces-config.xml file. You must also add a
<resource-bundle> element to your application's faces-config.xml file to make the resource bundles available to all the pages in your application. Once you have configured and registered a resource bundle, the Expression Language (EL) editor displays the key from the bundle, making it easier to reference the bundle in application pages.
To simplify the process of creating text resources for text you add to ADF components, JDeveloper supports automatic resource bundle synchronization for any translatable string in the visual editor. When you edit components directly in the visual editor or in the Property Inspector, text resources are automatically created in the base resource bundle.
For more information on automatic resource bundles, see "Using Automatic Resource Bundle Integration in JDeveloper" in the Oracle Fusion Middleware Web User Interface Developer's Guide for Oracle Application Development Framework.
For more information on manually defining resource bundles, see "Manually Defining Resource Bundles and Locales" in the Oracle Fusion Middleware Web User Interface Developer's Guide for Oracle Application Development Framework.