Skip to Content
Nov 10, 2017 at 08:46 AM

Smart Edit Issue (6.5) due to Language with ISO code having underscore in it Like (es_MX)



We have installed the smartedit addon on custom b2c strorefront. We are using hybris version 6.5. Language of our storefront is es_MX. We are able to login and select the site but when we try to open any page in preview mode, we are getting an error (stake trace mentioned below):

Our language is created having isocode es_MX in DB so we tried to check the code in smartedit where it could be changed to es-MX. We are able to find method convertLocalToIsoCodes in DefaultSmarteditI18nFacade and DefaultLanguageFacade where this is converted to hyphen "-" instead of underscore. Since, there is no LanguageModel exists in the system with isocode es-MX so the error message seems valid. Not sure the reason but it seems that es-MX is not converted back to es_MX before trying to fetch this from DB.

  • I wanted to check if anyone else has also faced similar issue?

  • Is there any recommendation to overcome this issue?

de.hybris.platform.servicelayer.exceptions.UnknownIdentifierException: LanguageModel with isocode 'es-MX' not found! at de.hybris.platform.servicelayer.util.ServicesUtil.validateSingleResultWithType( at de.hybris.platform.servicelayer.util.ServicesUtil.validateIfSingleResult( at de.hybris.platform.servicelayer.i18n.impl.DefaultCommonI18NService.getLanguage( at de.hybris.platform.previewwebservices.populators.PreviewTicketReversePopulator.lambda$0( at de.hybris.platform.webservicescommons.util.impl.DefaultLocalViewExecutor.lambda$0( at de.hybris.platform.webservicescommons.util.impl.DefaultLocalViewExecutor$1.execute( at de.hybris.platform.servicelayer.session.impl.DefaultSessionService.executeInLocalView( at de.hybris.platform.webservicescommons.util.impl.DefaultLocalViewExecutor.executeInLocalView( at de.hybris.platform.webservicescommons.util.impl.DefaultLocalViewExecutor.executeWithAllCatalogs( at de.hybris.platform.previewwebservices.populators.PreviewTicketReversePopulator.populate(

Any quick pointer would be helpful.

Thanks, Ankit