How to avoid displaying Identity Manager languages you don't need.

Document ID : KB000050325
Last Modified Date : 14/02/2018
Show Technical Document Details

Description:

Identity Manager 12.5 is coming with initial localization for a number of languages out of the box. See the doc below to know how to be able to only allow these languages you actually need to display.

Solution:

Identity Manager 12.5 provides an initial set of languages localized out of the box. The messages of these languages have already been translated to the specific languages. This means that customers can use their browser to select a language and display Identity Manager in that language. Note that once a language is specified at the browser then Identity Manager will always look to display its contents for the top selected browser language. This mechanism cannot be bypassed or canceled. If Identity Manager will look into the specified language (the one at top of the browser's selected language list) and adjust its locale to work with that language. It will look to find a set of properties files that have been localized and translated into that locale.

Identity Manager is organizing its locale files inside the deployed ear file folder inside \custom\ResourceBundles folder. In that folder there is a set of properties files that can be localized to any locale. Each such file has no locale as a default where the contents is in English. Each such file can be extended to support any number of locales according to the following convention:

FileName.properties (is the default file)

FileName_<locale code>.properties ( is the version of that file that corresponds the the locale identified by '<locale_code>' as provided by the browser. In this file it is expected that the contents will be properly translated to that specific language. You can find more details in our book shelf on how to make these translations.

So, for instance, if the top language is French (code: 'fr') then Identity Manager will look to find the properties files that have the "_fr" before displaing their contents.

So, when displaying a message out of the IMSResource file name it will look to find the file: IMSResource_fr.properties. If this file isn't found it will use the default file which would be IMSResource.properties.

Similarly this mechanism work for any file in that folder.

Some customers might not actually need the out of the box set of provided localized properties files. Some customers might prefer all their users to interact in English and prevent them from using the browser's selected language mechanism. However, since there is no way to disable this mechanism in Identity Manager what should be done is to remove all the out of the box properties files for the locales you are not interested in. This will ensure the Identity Manager will not find any properties file that matches any prohibited locale and will default to the default properties file of the <FileName>.

So, for example, a customer who only is interested in English shall remove all of the properties files that have _<locale code> for any <locale code>. Leaving only the <FileName>.properties set of files will ensure nothing is found and all will be displayed in English.

Another example, a customer is interested to only allow English and French will need to remove all proeprties files that have _<locale_code> other than '_fr' and "_en" so that these files aren't found in that folder. Such a customer will need to have a <FileName>.properties and <FileName>_fr.properties for each <FileName> of the types in that folder, removing all other locales. This will mean that only French will be served if selected by the calling browsers while all other languages if selected will default to English.