Language of the Web Administration Tools

The language of the Data Catalog, the Design Studio and the administration tool of Scheduler is English by default. You can change the language of these applications. To do this, there are two options:

  1. For some of these modules and some languages, we provide a language file that you just copy to your installation of the Denodo Platform.

    Currently, we provide the language file for Data Catalog and Design Studio in Simplified Chinese. In the near future, we will provide the files for more languages.

  2. For others languages, the administrators of these modules can translate the user interface to the language of their choice. To do this, follow the steps below.

When changing the language of a module, consider that the language configuration of each component is independent. For example, you can set the Data Catalog in German and the Design Studio in English.

Data Catalog in Simplified Chinese

To change the language of Data Catalog to Simplified Chinese, follow these steps:

  1. Download the messages file: Data Catalog - Simplified Chinese.

  2. Copy this file to <DENODO_HOME>/work/data-catalog/

  3. Rename this file to customLang.properties.

  4. Restart Data Catalog.

Design Studio in Simplified Chinese

To change the language of Design Studio to Simplified Chinese, follow these steps:

  1. Download the messages file: Design Studio - Simplified Chinese.

  2. Copy this file to <DENODO_HOME>/work/design-studio/

  3. Rename this file to customLang.properties.

  4. Restart Design Studio.

Data Catalog, Design Studio and Scheduler in Other Languages

For others languages, the administrators of Data Catalog, Design Studio and Scheduler can translate the user interface to the language of their choice. To do this, the installation of the Denodo Platform includes a template file for each application. These template files contain key-value pairs like this one:

login.signIn=Sign in

The administrator has to translate the value of each pair. In this example, translate “Sign in” to the required language.

Follow these steps to translate the user interface of each application. You can do this only for the applications you want to translate, you do not need to do it for all of them.

Data Catalog

Follow these steps to translate the user interface of Data Catalog:

  1. Edit the file <DENODO_HOME>/resources/data-catalog/messages/customLang.properties.template and translate the messages, following the considerations below.

  2. Copy this file to the directory <DENODO_HOME>/work/data-catalog/ and rename this file to customLang.properties.

  3. Restart Data Catalog

Design Studio

Follow these steps to translate the user interface of Design Studio:

  1. Edit the file <DENODO_HOME>/work/design-studio/customLang.properties and translate the messages, following the considerations below.

  2. Copy this file to the directory <DENODO_HOME>/work/design-studio/ and rename this file to customLang.properties.

  3. Restart Design Studio

Scheduler Administration Tool

Follow these steps to translate the user interface of Scheduler Administration Tool:

  1. Edit the file <DENODO_HOME>/work/scheduler-webadmintool/customization/customLang.properties and translate the messages, following the considerations below.

  2. Copy this file to the directory <DENODO_HOME>/work/scheduler-webadmintool/customization/ and rename this file to customLang.properties.

  3. Restart the Scheduler Administration Tool

Considerations When Translating the Language Files

The customLang.properties files store the translation of the messages in key-value pairs. You have to translate the value. For example, if you are translating the user interface to Spanish, replace this:

common.daysOfWeek.monday=Monday

with this:

common.daysOfWeek.monday=Lunes

That is, translate the text on the right side of the “=” sign.

When modifying these files, follow these rules:

  • Do not change the encoding of the customLang.properties files. They are encoded in UTF-8 and if you change it, the applications may display garbled text.

  • Do not translate words surrounded by curly braces (e.g. {name}). These words represent a pattern and the applications will replace with context-related information.

    For example, for this message:

    login.welcome=Welcome {username}!
    

    leave {username} as is:

    login.welcome=¡Bienvenido {username}!
    

    Note that {username} remains in the translated message. When the application displays this message to a user, it will replace {username} with the value of this pattern.

  • Be careful with complex patterns. Those expressions contain both tokens and values to be translated. For example, if you see this:

    element.usage.times.queries=Query executed {times, plural, one {once} =2 {twice} other {# times}}
    

    you have to translate it like this:

    Consulta ejecutada {times, plural, one {una vez} =2 {dos veces} other {# veces}}
    

    Note that the nested patterns within curly braces have been translated to Spanish.

    The documentation of ICU MessageFormat explains this in more detail.

How to Refresh Custom Messages After Installing an Update

If you already have customLang.properties defined and plan to install an update or you already installed it, your customLang.properties will not be updated automatically. The new update may include a new customLang.properties.template for each Web Administration Tool with modifications that might include new messages, modifications of previous messages and deleted messages.

When an updated is installed, if a previous customLang.properties.template file exists the update will replace the template with the new version. Also, the update will create a backup of the current template file (adding a suffix such as customLang.properties.template.back.202107152200 where the numbers at the end represent the update version where the template was added). Do not remove the backup versions because they will help you identify changes in the upcoming updates.

In order to keep your custom customLang.properties files updated, the script <DENODO_HOME>/setup/common/custom_lang_util, will help identify all the differences and update your customLang.properties files. You can manually update your custom file checking the differences between the previous template and the new template, or generate a new customLang.properties using your current customLang.properties as a starting point.

custom_lang_util script options:

  • -diff: receives as argument the template of the previous version and the template of the last version and shows de differences between both files categorized (removed properties, new properties and modified properties). You may use this option if you want to manually update you current customLang.properties. Usage:

    -diff <lastPropertiesTemplateFile> <updatedPropertiesTemplateFile>
    
  • -gen: creates a custom properties file using as a starting point your current customLang.properties and applies the differences between the template you used to generate your current file and de new template. At the end of the generated file, you will find two sections showing new and modified properties. Each modified property will have a comment with the previous value and the new value and will not replace the custom defined message. The properties that do not longer exist in the new template are automatically removed. Usage:

    -gen <lastPropertiesTemplateFile> <updatedPropertiesTemplateFile> <currentCustomPropertiesFile> <newCustomPropertiesFile>
    

Example of updating the customLang.properties of the Design Studio manually:

  1. Identify the new and the old templates. First, check your current update version and your previous update in the Control Center. Let’s say that XXXXXXXX is our previous update and YYYYYYYY is the version of the latest update installed. Open the template folder <DENODO_HOME>/resources/design-studio/messages/. You may find a template file for each update installed. Identify the ones which version matches with your current and previous version respectively, in our example customLang.properties.template.back.XXXXXXXX and customLang.properties.template.back.YYYYYYYY.

  2. Using the script custom_lang_util.sh identify the differences by executing the following commands (replace ‘XXXXXXXX’ and ‘YYYYYYYY’ with the version of your template files):

cd <DENODO_HOME>/setup/common
custom_lang_util.sh -diff ../../resources/design-studio/messages/customLang.properties.template.back.XXXXXXXX ../../resources/design-studio/messages/customLang.properties.template.back.YYYYYYYY
  1. Open your current <DENODO_HOME>/work/design-studio/customLang.properties and update its value with the information obtained in step 2

  2. Restart the Web Administration Tools in order to load the new configuration.

Example of generating a customLang.properties for the Design Studio with the help of the script custom_lang_util.sh:

  1. Identify the new and the old templates. First, check your current update version and your previous update in the control center. Let’s say that XXXXXXXX is our previous update and YYYYYYYY is the version of the latest update installed. Open the template folder <DENODO_HOME>/resources/design-studio/messages/. You may find a template file for each update installed. Identify the ones which version matches with your current and previous version respectively, in our example customLang.properties.template.back.XXXXXXXX and customLang.properties.template.back.YYYYYYYY.

  2. Using the script custom_lang_util.sh generate the new file executing the following commands (replace ‘XXXXXXXX’ and ‘YYYYYYYY’ with the version of your template files):

cd <DENODO_HOME>/setup/common
custom_lang_util.sh -gen ../../resources/design-studio/messages/customLang.properties.template.back.XXXXXXXX ../../resources/design-studio/messages/customLang.properties.template.back.YYYYYYYY ../../work/design-studio/customLang.properties ../../work/design-studio/new_customLang.properties
  1. Open your new file <DENODO_HOME>/work/design-studio/new_customLang.properties, go to the end of the file and update the values of the new and modified properties.

  2. Replace <DENODO_HOME>/work/design-studio/customLang.properties with your new properties file <DENODO_HOME>/work/design-studio/new_customLang.properties.

  3. Restart the Web Administration Tools in order to load the new configuration.