10.3 Localizing the Text in the Interfaces

The text displayed in the identity applications is stored in either a set of language-based JSON files, language-based JAR files, or properties files located in the User Application WAR and User Application driver. In general, the file name includes a reference to the language. For example, the English language strings for the User Application are stored in the UserAppStrings_en.JAR.

NOTE:The labels and string text typically change between versions. This means that you have to apply your string changes or customizations to each new release.

You can also translate or localize the names and descriptions of provisioning objects in the Directory Abstraction Layer, Provisioning Request Definition, and Role Catalog. For more information, see Localizing Provisioning Objects.

10.3.1 Considerations for Modifying Text and Strings

To determine which text you want to modify, review the following considerations:

  • Which identity application do you want to modify: Dashboard, Identity Applications Administration or User Application? If the text comes from a WAR file, you must select the WAR for the appropriate application.

  • Make a list that includes each string you want to change and where the string is located in the user interface. You can use this list when testing your changes to ensure that you made the text changes in the appropriate places.

  • Determine whether the strings are stored in the User Application driver or in the language-based JAR. The following guidelines help you determine where the strings are stored:

    • Navigation, headers, names, and instructions: This content is stored in language-based .jar files.

    • Dashboard: Some content is stored in language-based .jar files. However, other content derives from .properties files that you can download from the Dashboard.

    • Identity Self-Service tab: This content is stored in language-based JARs, unless it is related to directory abstraction layer entities (such as display name, lists, and categories). Content related to directory abstraction layer entities is stored in the User Application driver.

    • Work Dashboard tab: This content is stored in language-based .jar files, unless it is in the Form Details section. The content in the Form Details section is stored in the User Application driver, which you update in iManager.

    • Administration tab: This content is stored in language-based .jar files.

    • Roles and Resources tab: This content is stored in language-based .jar files unless it is related to role or SoD names or descriptions. Role or SoD names and descriptions are stored in the User Application driver.

    • Compliance tab: This content is stored in the language-based .jar files unless it is related to the provisioning request definition. Content related to the provisioning request definition is stored in the User Application driver.

  • The following table provides the designation for each supported language:

    Language

    Locale Designation

    Chinese (China)

    zh_CN

    Chinese (Taiwan)

    zh_TW

    Danish

    da

    Dutch

    nl

    English

    en

    French

    fr

    German

    de

    Italian

    it

    Japanese

    ja

    Portuguese

    pt

    Russian

    ru

    Spanish

    es

    Swedish

    sv

  • Modify only the value, and not the key. The strings in the files are in the properties file format of key=value. Modifying the key can cause run-time errors.

  • Use an editor that formats properties files for improved readability, when possible.

  • Use an editor that displays characters rather than unicode encoding for improved readability. Some of the properties files contain unicode-encoding.

  • In the editor, turn off wrapping to improve readability. It helps identity each property on a separate line.

  • In some files, the key value might be difficult to identify, especially if your editor does not provide automatic property file formatting. In these cases, search for the equals sign, and find the first occurrence of the equals sign that does not have a backslash preceding it (\=). The key precedes the equals sign (=), and the value follows it.

  • Maintain the proper properties file format. For more information, see Java Properties Object.

10.3.2 Localizing the Labels in the Dashboard

Some organizations might want to customize the default names for the fields and navigation items in the Dashboard. This procedure describes the process for updating the downloadable .properties files.

To customize Dashboard content derived from the User Application WAR file, see Localizing the Text Stored in the JAR Files.

WARNING:Do not modify any text in the code string before the = sign. For example, category-featured-47-name =. The Dashboard might not function appropriately if you change the code string incorrectly.

  1. Log in to the Identity Manager Dashboard.

  2. Select Applications > .

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

    The Dashboard lists the .properties files by language.

  4. In the Languages window, download the .properties file for each language that you want to localize.

    Depending on your browser settings, you might be prompted for the download path.

    NOTE:If prompted, do not rename the .properties file. The Dashboard cannot upload a file that does not match the expected name.

  5. In a text editor, customize the displayed text for the attributes that you want to change.

    For example, if you download the pt.properties file to localize the Dashboard in Swedish, modify the properties file as follows:

    # English value: My Category
    category-featured-47-name = Min kategori

    NOTE:If you want to use double-byte or extended characters in the properties file, ensure that you save the file using the correct encoding.

  6. Save and close the file.

  7. In the Languages window, upload the modified file to the appropriate language.

  8. Close the Languages window, then select Edit Done.

  9. Refresh the browser window to view the changes.

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

10.3.3 Hiding the Applications Tab

  1. Navigate to the /opt/netiq/idm/apps/tomcat/conf/clients/ directory.

  2. Edit the 1.json file and ensure that the isDisabled value is set to False.

    If the following section is not there, add it:

    {
          "key": "main",
          "value": [],
          "type": "navItem",
          "isDisabled": false,
          "sectionKey": "Configuration",
          "areaDefault": false,
          "disableAreaDefault": false,
          "displayLable": "Application",
          "sectionLable": "Configuration",
          "page": null,
          "expanded": false,
          "level": 1
    }
  3. Save the 1.json file.

  4. Assign the required permissions for the 1.json file.

    chown novlua:novlua /opt/netiq/idm/apps/tomcat/conf/clients/1.json

  5. Restart Tomcat.

    systemctl restart netiq-tomcat

  6. Log in to Identity Manager Dashboard.

  7. Navigate to Settings > Access.

  8. Add the required trustees.

10.3.4 Modifying the Text of the Application Tab

You can modify the menu text and the header on the Application tab.

To change the Application menu text:

  1. Log in to the Identity Manager Dashboard.

  2. Select Applications > .

  3. On the Manage Applications page, select .

  4. On the Languages page, click next to the language file you want to download. For example, English.

  5. Modify the following line in the downloaded file. For example en.properties.

    label-menu-main = Application

    For example, you can modify the above line to:

    label-menu-main = Applications Menu

  6. Save the en.properties file.

  7. Click next to English to upload the en.properties file.

  8. Refresh the browser.

To change the header on the Applications Page:

  1. Navigate to the /opt/netiq/idm/apps/tomcat/webapps/idmdash/i18n/json/ directory.

  2. Edit the DashStringsRsrc_<language>.json file, where <language> is the language file that you want to modify. For example, DashStringsRsrc_en.json.

  3. Modify the following line:

    "Applications": "Applications",

    For example, you can modify the above line to:

    "Applications": Applications List",

  4. Refresh the browser.

10.3.5 Localizing the Text Stored in the JAR Files

The text strings stored in the WAR files are found in a language-based .jar file. These .jar files include various .properties files, which you can customize for the RBPM Configuration Utility as well as most of the Dashboard and User Application interfaces. You can also customize the labels for One SSO Provider (OSP).

WARNING:Do not modify any text in the code string before the = sign. For example, category-featured-47-name =. The identity applications might not function appropriately if you change the code string incorrectly.

The .jar files are located by default in the following directories.

  • Identity applications: /opt/netiq/idm/apps/UserApplication/l10n-resources/userapp

    For example, UserAppStrings_<locale>.jar.

  • OSP: /opt/netiq/idm/apps/osp/osp-extras/l10n-resources

    For example, osp-custom-resource.jar.

Customizing Strings for Identity Applications

To customize strings for identity applications:

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

  2. Identify the WAR file for the identity application that you want to modify:

    IDMProv.war for the User Application and Dashboard

  3. In the WAR file, locate the .jar file(s) that you want to update.

    For example, the UserAppStrings.JAR file contains displayed text for the User Application.

  4. Copy the .jar files that you want to update to a temporary directory.

    WARNING:Do not change the file names or directory structure of the .jar files.

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

    • Extract the .properties files

    • Use WinRAR to open each .properties file

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

  6. Browse the file directory to the .properties file that you want to edit.

    For example, UserAppStrings_fr.properties.

  7. In a text editor, customize the displayed text for the content that you want to change.

    WARNING:Do not modify any text in the code string before the = sign. For example, ADMIN_PASSWORD=. The identity applications might not function appropriately if you change the code string incorrectly.

  8. Save and close the editor.

  9. To apply your changes to the application, complete the following steps:

    WARNING:Do not change the file names or directory structure of the .jar and WAR files.

    1. Using the Java JDK jar program, add the properties files back to the .jar file.

    2. Add the modified .jar to the appropriate WAR file, maintaining the folder location within the WAR.

      You can use the Java JDK Jar program. For example:

      jar -uvf IDMPRov.WAR WEB-INF/lib/UserAppStrings_fr.jar
    3. Redeploy the WAR file to your application server.

  10. Stop Tomcat.

    For example:

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

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

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

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

  13. Start Tomcat.

    For example:

    systemctl start netiq-tomcat
  14. Before logging in to the identity applications, clear the browser cache to ensure that the browser displays your changes.

  15. To test your changes, complete the following steps:

    1. Access the identity application that you modified.

    2. Using your list of changes, review each occurrence of the string you changed to determine if you made the change appropriately.

Customizing Strings for OSP

To customize the strings on the OSP login page:

  1. Log in to the server where OSP is installed.

  2. Navigate to osp-extras/l10n-resources.

    By default, it is located in/opt/netiq/idm/apps/osp/osp-extras/l10n-resources.

  3. Back up osp-custom-resource.jar file.

  4. Copy the backed up osp-custom-resource.jar to a temporary directory.

  5. Extract the osp-custom-resource.jar file in the temporary directory.

    For example: jar xf osp-custom-resource.jar

    NOTE:Make sure that you have maintained the existing directory structure during extraction.

  6. Navigate to resources folder and open oidp_enduser_custom_resources_en_US.properties file and uncomment the following properties:

    WARNING:Do not modify any text in the code string before the = sign. For example, ADMIN_PASSWORD=. The identity applications might not function appropriately if you change the code string incorrectly.

    ## Organization name [nbsp], [reg], [tm], [amp], [br], [plus], [apos] are pseudo-tags 
    ## that are converted at runtime into appropriate HTML.
    OIDPENDUSER.LoginProductName=Company[nbsp]Name[reg]
    ## Whether the company or product name should be displayed in the login pages: "true" or "false"
    OIDPENDUSER.LoginProductNameDisplay=true

    These properties modify the banner name on the login page. You can uncomment other properties and change them to localize different texts on the login page.

  7. Save and close the editor.

  8. Stop Tomcat.

    For example:

    systemctl stop netiq-tomcat
  9. To apply your changes to the application, complete the following steps:

    WARNING:Do not change the file names or directory structure of .jar and WAR files.

    1. Using the Java JDK jar program, add the properties files back to the .jar file.

    2. Update the osp-custom-resource.jar with the customized properties files in the temporary directory.

      You can use the Java JDK Jar program. For example:

      jar -uf osp-custom-resource.jar resources/oidp_enduser_custom_resources_en_US.properties
    3. Copy the updated osp-custom-resource.jar to the tomcat/lib directory.

  10. Delete all files and folders in the following directories:

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

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

  11. Start Tomcat.

    For example:

    systemctl start netiq-tomcat
  12. Before logging in to the identity applications, clear the browser cache to ensure that the browser displays your changes.