-
Bug
-
Resolution: Fixed
-
Major
-
5.4.8
-
-
Empty show more show less
-
Kromeriz 98
-
8
info.magnolia.cms.i18n.AbstractI18nContentSupport#determineLocale() wrongly determines the Locale if fallbackLocale and defaultLocale differ due to:
// instead of returning the content fallback language // we are going to return the default locale which might differ if(locale.equals(getFallbackLocale())){ locale = getDefaultLocale(); }
Problem
info.magnolia.cms.i18n.I18nContentSupportFilter uses the above method to determine the current Locale. Consider the following scenario:
- defaultLocale: de
- fallbackLocale: en
- URL: /demo-project/en
When accessing the en page, the method will return de, as en is fallbackLocale but de is defaultLocale, thus the I18nContentSupportFilter will try to find a page named /en which doesn't exists → 404.
Proposed solution
Completely remove above logic.
- caused by
-
MAGNOLIA-3062 i18n: support multiple languages in edit mode
- Closed
- is causing
-
MAGNOLIA-6851 Enabled i18n breaks Virtual URI Mapping when mapping starts with language path
- Accepted
- relates to
-
MGNLUI-3128 FormBuilder: defaultLocale in dialogs is always taken from the "default" site definiton
- Closed