1.7. Load order of i18n files from source and jar files

When the system starts up the I18nManager checks which languages are available. This is done in the method doInitAvailableLanguages(). The following sources are searched for i18n Files:

  1. In development mode: on the application and brasato source path (brasato.src in olat.properties must be configured)

    • WebappHelper.getBrasatoSourcePath(): the brasato source path.

    • WebappHelper.getSourcePath(): the application source

    The languages found there are considered to be translatable. Normally this is only DE and EN.

  2. In translation mode: on the translation directories (is.translation.server, i18n.application.src.dir and i18n.brasato.src.dir must be configured accordingly)

    The languages found there are considered to be translatable. This means that they can be translated with the translation tool with read/write access

  3. In the jar libraries

    • webapp/WEB-INF/lib/*.jar: each jar file is searched for */_i18n/* directories, e.g. in olatcore_i18n_all-SNAPSHOT.jar and olat3_i18n_all-SNAPSHOT.jar but also in your custom jar files

    The languages found here are not translatable, read only.

  4. In the optional language packs directory (language packs uploaded in the language configuration)

    • olatdata/customizing/lang/packs/

    The languages found here are not translatable, read only.

  5. In the language customizing directory (files created with the customizing tool)

    • olatdata/customizing/lang/overlay/

    The languages found here are translatable, read/write. However, these are only language overlays, not real languages.

The I18nManager processes the steps above and adds each found language file to the internal map. The first hit counts, a second hit for the same language and bundle in another source will be ignored.