10.4 Adding a Language to the Identity Applications

If the default languages for Identity Manager do not meet your organization’s needs, you can translate the strings and user interface content to a different language. For example, you might want to interact with the identity applications in Norwegian (language code=nb). To translate content to a non-default language, you can copy the .properties files of an existing language.

To complete this process, we recommend perform the following steps in the listed order.

Checklist Items

  1. Configure the identity applications to support the new language. For more information, see Adding the New Language to the Identity Applications.

  1. Copy an existing set of files that you can use as a template for translating to the new language. For more information, see Preparing Files for Translation.

  1. Translate the files.

  1. Change the default language to the new language. For more information, see Changing the Default Language.

  1. Add the translated files to the appropriate locations, such as WAR files or upload to the user interface. For more information, see Add the Translated Files to the Proper Locations.

  1. Update notification templates using designer. For more information, see Updating an Email Notification Template.

  1. Verify that the identity applications display the appropriate content. For more information, see Verifying the New Translations.

For more information about customizing the content for a existing language, see Localizing the Text in the Interfaces.

10.4.1 Adding the New Language to the Identity Applications

You must configure the identity applications to support the new language. You can perform this action in iManager.

  1. Log in to iManager as an Administrator.

  2. Click icon for View Objects.

  3. In the , navigate to Context > Driver Set > Driver > AppConfig > AppDefs.

    For example, netiq > TestDrivers > UserAppDriver > AppConfig > AppDefs.

  4. Click local-configuration.

  5. In the Valued Attributes list, select XmlData, then click Edit.

  6. In the Edit Attribute window, search for <locale code"=xx> </locale> and create similar tags with the values for the language that you want to support.

    Ensure that you verify the language code.

  7. Search <supported-locale>xx</supported-locale> and add a new tag with the newly created language code. For example:

    <supported-locale>en</supported-locale>
  8. Click OK, then OK again.

  9. Restart the application server.

  10. To verify that the identity applications can display the new language, complete the following steps:

    1. Log in to the Dashboard as an administrator.

    2. Select Applications > .

    3. On the Manage Applications page, select the Localize icon.

      The Dashboard lists the .properties files by language.

    4. Verify that the language you added to iManager appears in the list of Languages.

      Although the Dashboard displays a Download option for the new language, there is not content to download. To create that content, continue to Preparing Files for Translation.

10.4.2 Preparing Files for Translation

The identity applications display content from several types of language-based .properties files from the following sources:

  • .json files, such as DashStringsRsrc_en.json

  • .json files, such as AdminStringsRsrc_en.json

  • .jar files, such as UserAppStrings_en.jar

    WARNING:Do not change the directory structure of the .jar files or modify any text in the code strings before the = sign. The identity applications might not function if you make inappropriate alterations.

  • Downloadable files, such as localizedLabels_en.properties

    To make it easy to modify the content that the identity applications source from the WAR files, we enable you to download the .properties files directly from the Dashboard. You do not need to edit the WAR files.

You use different tools to customize the text depending on where the text is stored. To ensure that all content appears in your preferred language, you must translate all of the files. This procedure assumes that you will translate English .properties files to the new language, rather than starting from another language such as French.

For more information about customizing the interface content, see Localizing the Text in the Interfaces.

To prepare files for translation:

  1. Complete the steps in Adding the New Language to the Identity Applications.

  2. To prepare the file that the Dashboard uses for labels in the user interface, complete the following steps:

    1. To download a file to use as the template for translation, complete the procedure in Localizing the Labels in the Dashboard.

    2. Change the locale code in the file name to represent the language that you want to add.

      For example, to add Norwegian, change

      localizedLabels_en.properties

      to

      localizedLabels_nb.properties
  3. To prepare the content in the .jar files, complete the following steps:

    1. Create backup copies of the .jar files that you want to translate. Store the backups in a safe location.

      For more information about updating .jar files, see Localizing Text Stored in the JAR Files.

    2. Copy the .jar files that you want to translate to a temporary directory.

      You will need these files again after the translations are complete.

    3. To access the .properties files in each .jar file in the temporary directory, complete one of the following actions:

      • Extract the English .properties files

      • Open the properties file in WinRAR

      For example, access the OAuthManagerRsrc_en.properties file in the UserAppStrings_en.JAR.

    4. For each .properties file, change the locale code in the file name to represent the language that you want to add.

      For example, to add Norwegian, change

      OAuthManagerRsrc_en.properties

      to

      OAuthManagerRsrc_nb.properties
    5. Within each .properties file, change the language code in the key BUNDLE_LOCALE to represent the language that you want to add.

      For example, to add Norwegian, change

      BUNDLE_LOCALE=en

      to

      BUNDLE_LOCALE=nb
    6. (Conditional) If a string that you want to translate and use in the .properties file has a comment, you must un-comment it.

      For example, change

      #OIDPENDUSER.50048=Next

      to

      OIDPENDUSER.50048=Next
    7. Create .jar files to contain the .properties files that you want to translate.

      For example, for the Norwegian translator, you might create UserAppStrings_nb.jar.

      The new .jar files must mimic the directory structure of the original files.

    8. Add the .properties files that are ready for translation to the new, appropriate .jar files.

      For example, add the OAuthManagerRsrc_nb.properties file to the UserAppStrings_nb.jar file.

  4. To prepare the content in the .json files, complete the following steps:

    1. Locate the files as described in Localizing Text Stored in the JAR Files.

  5. Provide the .jar files, localizedLabels_xx.properties files, and .json files to your translator.

    WARNING:Ensure that the translator maintains the file names and directory structure of the .jar files. Also, do not modify any text in the code string before the = sign. For example, com.netiq.UA.persistence.ops.AttributeDefinition.USER.guid=. The identity applications might not function if you make inappropriate alterations.

  6. To add the supported locale for idmadmin.war, perform the following steps:

    1. Navigate to idmadmin.war and open this file using Winrar.

      \opt\netiq\idm\apps\tomcat\webapps\idmadmin.war
    2. Add the new AdminStringsRsrc_xx.json file and validate this file.

      \idmadmin.war\assets\i18n\
  7. To change the supported locale for idmadmin.war, perform the following steps:

    1. Navigate to idmadmin.war and open this file using Winrar.

      \opt\netiq\idm\apps\tomcat\webapps\idmadmin.war
    2. Edit the AdminStringsRsrc_xx.json file and validate this file.

      \idmadmin.war\assets\i18n\
    3. Copy the edited AdminStringsRsrc_xx.json file to the following location.

      \idmadmin.war\assets\i18n\

10.4.3 Changing the Default Language

The configupdate Utility controls which languages appear in the identity applications and sets the default language. Perform this procedure when you are ready to add new translations to the identity applications.

  1. Complete the steps in Preparing Files for Translation.

  2. In a terminal, navigate to the /bin directory, located by default in /opt/netiq/idm/apps/UserApplication or C:\NetIQ\idm\apps\UserApplication.

  3. At the command prompt, use one of the following methods to run the configuration utility:

    • Linux: ./bin/configupdate.sh

    • Windows: configupdate.bat

    NOTE:You might need to wait a few minutes for the utility to start up.

  4. Select Miscellaneous.

  5. For Supported Locales, add the locale code that represents the language(s) that you want to include. Use a pipe sign to separate entries.

    For example, enter |nb for Norwegian.

  6. For Default Locale, specify the language that you want to use.

    For example, enter nb for Norwegian.

  7. Save your changes and close the utility.

10.4.4 Add the Translated Files to the Proper Locations

After translations are completed, you can add the translated files to their appropriate WAR and uploaded locations.

  1. Log in to the server where you installed the identity applications.

  2. Copy the .jar file(s) to WEB-INF/lib/, by default in the /opt/netiq/idm/apps/tomcat/webapps/IDMProv/ directory.

  3. Upload the .json file to /opt/netiq/idm/apps/novlua/netiq_custom_css.

  4. Stop Tomcat.

    For example:

    systemctl stop netiq-tomcat
  5. Delete all files and folders in the following Tomcat directories:

    • temp, located by default in /opt/netiq/idm/apps/tomcat

    • Catalina, located by default in /opt/netiq/idm/apps/tomcat/work

  6. Delete all log files from the Tomcat logs directory, located by default in /opt/netiq/idm/apps/tomcat.

  7. Start Tomcat.

    For example:

    systemctl start netiq-tomcat
  8. To upload the label files, complete the following steps:

    1. Log in to the Dashboard as an administrator.

    2. Select Applications > .

    3. On the Manage Applications page, select the Localize icon.

    4. For the language that you added to the identity applications, select Upload.

      For example, if you added the locale code for Norwegian, upload the localizedLabels_nb.properties file.

    5. Refresh the browser window to view the changes.

      NOTE:Depending on the browser settings, you might need to log out, clear the cache in the browser, then log in again.

10.4.5 Updating an Email Notification Template

After adding a language to the identity applications, update the notification templates for the newly added language using Designer.

  1. Ensure that your localized notification template includes an appropriate locale code in the filename.

    If you are updating the localized template for Norwegian language, ensure your template’s fiename includes.nb. For example Email Based Approval Templates.nb

  2. Import the modified notification template into Default Notification Collection.

    1. Right-click Default Notification Collection and select Import Templates from File.

    2. Browse to and select the notification template.

  3. Right-click Default Notification Template and select Live > Deploy.

10.4.6 Verifying the New Translations

  1. In a browser, clear the browser cache.

  2. Change the browser language to the language that you added.

  3. Enter the URL for the identity applications.

    If you did not translate the content in the OSP .jar files, the login page continues to appear in the default language.

  4. Log in.

  5. Observe the translated content.