How to load only part of the dictionary in AEM 6.0? | Community
Skip to main content
New Participant
January 13, 2016
Solved

How to load only part of the dictionary in AEM 6.0?

  • January 13, 2016
  • 12 replies
  • 7939 views

Hello,

I'm using AEM6.0 with SP3.

In javascript we are loading part of the transation with CQ.I18n.getMessage method.

/libs/cq/i18n/dict.en_us.json returns only custom translation, but /libs/cq/i18n/dict.de_de.json in additional to our custom translation returns also AEM OOTB translations.

How I can prevent this for publish instance?

Thank you in advance

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by joerghoh

Hi,

so do I understand you correct?

  • When you hit /libs/cq/i18n/dict.en_us.json with your browser, you get only the custom translations (= the translations you provided)
  • When you hit /libs/cq/i18n/dict.de_de.json with your browser, you get the custom translations plus the ootb german translations

Is this correct? And you have put your custom translations below /apps/my-project/i18.

Which version of AEM do you have? Can you provide the exact version of the bundle "org.apache.sling.i18n"?

kind regards,
Jörg

12 replies

New Participant
May 22, 2018

We faced the similar requirement to fetch I18n values at client side using Granite.i18n Library

This is what I did.

1) Created a custom servlet which returns JSON response similar to ResourceBundleExportServlet

2) Loaded the bundle using basename and locale parameter - ResourceBundle resourceBundle = req.getResourceBundle(basename, pageLocale);

3) Added 'sling:basename="basename_constant"' in language specific i18n xml file which resides in /apps/project-name/i18n folder. In my case, I am setting the value of locale itself ex: "zh_cn"

4) In clientlibs javascript file setting Granite.I18n.setUrlPrefix("/bin/custom/i18n/dict."); to fetch from custom servlet URL.

mohanr80993572
New Participant
September 1, 2016

Ok, thank you - Mohan

New Participant
September 1, 2016

We just deactivated /libs/wcm/core/i18n from publish instance

-Alex

mohanr80993572
New Participant
August 31, 2016

Thanks Alex, for the info. Did you deactivate dictionaries at /libs/wcm/core/i18n in publish instance or using Guide Localization Service or overlayed  /libs/wcm/core/i18n with your custom or blank dictionaries?

- Mohan

New Participant
August 31, 2016

Hello,

We deactivated OOTB dictionaries from publish instance.

Thanks,

Alex

mohanr80993572
New Participant
August 31, 2016

Hi Alex, could you find any solution for this? Even we are facing same issue.

Thanks,

Mohan

New Participant
March 2, 2016

Any updates?

New Participant
January 18, 2016

Hi,

>>When you hit /libs/cq/i18n/dict.en_us.json with your browser, you get only the custom translations (= the translations you provided)

>>When you hit /libs/cq/i18n/dict.de_de.json with your browser, you get the custom translations plus the ootb german translations

>>Is this correct? And you have put your custom translations below /apps/my-project/i18.

Correct.

>>Which version of AEM do you have?

AEM6.0 + SP3

Can you provide the exact version of the bundle "org.apache.sling.i18n"?

2.2.8

Thanks,

Alex

joerghoh
joerghohAccepted solution
Employee
January 15, 2016

Hi,

so do I understand you correct?

  • When you hit /libs/cq/i18n/dict.en_us.json with your browser, you get only the custom translations (= the translations you provided)
  • When you hit /libs/cq/i18n/dict.de_de.json with your browser, you get the custom translations plus the ootb german translations

Is this correct? And you have put your custom translations below /apps/my-project/i18.

Which version of AEM do you have? Can you provide the exact version of the bundle "org.apache.sling.i18n"?

kind regards,
Jörg

New Participant
May 7, 2020
Hi Jörg, I still that happening in AEM 6.4 and 6.5. We do have our custom translations. Right now there are three languages: en, es and zh. /libs/cq/i18n/dict.es.json returns OOTB values, how to prevent this? zh and en works as expected.
New Participant
January 15, 2016

Hi Jörg,

/apps/my-project/i18n

Thanks,

Alex