There are two levels of localization: the first level is the delivered system editor functions and the second level is the ability to localize your in-house developed .irpt Web pages.
All system configuration and administration functions support localization. The system includes both English and German language support. The default system language is set under System Properties. With authentication, each user can have their language of choice set through the Users page function. Additional language support for the system editor functions can be provided without a software upgrade by adding a localized properties file with the correct language name extension. For additional information, please contact your technical support representative.
Localization in SAP xMII and Security Manager configuration editors uses Java resource bundle technology. Resource bundles use a naming convention to distinguish numerous versions of the same bundle. Each bundle name consists of a base name and an optional locale identifier. Together, these two pieces uniquely identify a bundle in a package.
SAP xMII and Security Manager editors use property resource bundles. A property resource bundle is simply a text file with a properties extension. Each line in the file is a comment (#), blank line, or a <key>=<value> entry.
A degradation algorithm is used to search resource bundles in an attempt
to find the closest match to a bundle in cases where the specified bundle
cannot be found or does not exist. In the following search each element
of the search name is separated with an underscore character. The algorithm
searches for bundle names in the following order:
<baseclass>_<specific language>_<specific country>_<specific
variant>
<baseclass>_<specific language>_<specific country>
<baseclass>_<specific language>
<baseclass>_<default language>_<default country>_<default
variant>
<baseclass>_<default language>_<default country>
<baseclass>_<default language>
<baseclass>
For example, suppose the default locale determined by the operating
system is en_US (U.S. English). The requested locale is fr_CA (Canadian
French). The resource bundles are searched in the following order until
a match for the requested resource key is found:
MyResource_fr_CA.properties
MyResource_fr.properties
MyResource_en_US.properties
MyResource_en.properties
MyResource.properties
Performance while using resource bundles is fast because the Java resource bundle APIs cache bundles as they are needed. However, resource bundles may not be dynamically updated. The application server must be restarted for bundle updates to take effect.
SAP xMII uses two types of localization. It uses the standard resource bundle localization and a custom localization for dynamic user localization.
There are two resource bundle packages used in SAP xMII for localizing items. These bundles are located in the classes directory of the SAP xMII Web application.
The ErrorResources bundle contains the text message
for all errors that can be returned by the system. Errors are returned
by the system using the resource bundle key so that they are displayed
in the user’s language.
The error messages may contain dynamic parameters that are populated
when the message is localized. The MessageFormat bundle parses the parameters
into the message. Parameters are specified using braces and the argument
index. The argument index value is a non-negative integer written using
the digits zero through nine and represents an index into the arguments
array.
The StringResources bundle contains all other text and messages. Similar to ErrorResources, string resources may also contain dynamic parameters that use the brace and argument index syntax.
Dynamic user localization is performed in a similar manner as Java resource bundles but uses custom code. User localization changes are dynamic and take effect immediately. These files are located in the Properties directory. Unlike Java resource bundles, the language is used to identify the various files only, rather than the full locale information.
User resource bundles are searched using the following algorithm:
UserStringResources_<specific language>
UserStringResources_<system language>
UserStringResources_xx.properties
The default system language is specified on the System Administration page that is accessible from System Management | System Administration. The default translations are stored in the file ending with ‘xx’ as the language.
Security Manager uses four resource bundle packages for localizing items. These bundles are located in the classes directory of the security Web application.
The ErrorMessages
bundle contains the text message for all errors in the system. Errors
are given by the system using the resource bundle key so that they are
displayed in the user’s language.
Error messages may contain dynamic parameters that are populated when
the message is localized. The MessageFormat bundle parses the parameters
into the message. Parameters are specified using braces and the argument
index. The argument index value is a non-negative integer written using
the digits zero through nine and represents an index into the arguments
array.
The Messages bundle contains general status messages. Similar to the ErrorMessages bundle, Messages may also contain dynamic parameters using the brace and argument index syntax.
Labels contain text used in the JavaServer Pages (JSP) as field labels. Labels cannot contain dynamic parameters.
The Images bundle contains image uniform resource locator (URL) paths for images that contain text and must be localized.