Expand my Community achievements bar.

Radically easy to access on brand approved content for distribution and omnichannel performant delivery. AEM Assets Content Hub and Dynamic Media with OpenAPI capabilities is now GA.

sling:alias property not updating in language copies

Avatar

Level 3

Hi All, 

I've a translated language copy page 'A' created from a language master (english copy). Later If I add sling:alias and page title property value in language master page and translate the page again,
1. sling:alias property is not adding up in the properties of the translated language copy page A. However page title property is getting updated in the existing language copy page.
2. If I add sling:alias property value in language master page and translate it for the first time, say language copy page B, property get added in the jcr:content node.

Could anyone please tell any logical reason why sling:alias is not getting added for any existing language copy page? Other page properties like page title property gets added and works as expected.

I also observed if sling:alias is set/added for any language copy page from its language master page and if I modify its value in language master and translate the page again, value set in translated language copy doesn't get updated.

Please share your experience here, it might be helpful for me to understand how this works in AEM.

13 Replies

Avatar

Community Advisor

Hi @MeenuRajput 

 

At the initial rollout (when the corresponding page on the live copy does not exist yet), the whole content of a page is rolled out. So, the page is copied in its entirety.

At all further rollouts, some special properties are not rolled out again. Therefore, any change of such a property is not visible on the live copy page.

By default, the properties that aren't rolled out are special properties with a name that start with jcr:, cq: or sling:.

 

Here is a link to adobe documentation for more details on this.

https://helpx.adobe.com/in/experience-manager/kb/MSMRolloutConfig.html

 

Regards

Avatar

Level 3

Hi @JeevanRaj , 
Thanks for your response. 
I'll totally agree with you on this. I tried all these test-cases with jcr:title property as well. As a result it didn't get updated in existing language copy page. 
'pageTitle' must have been rolled out and updated in existing copy too as this doesn't come under category special properties with a name that start with jcr:, cq: or sling: . 
Is there any way of overriding this default behaviour so we are able to rollout these special properties on subsequent rollout of pages?

Best Regards,
Meenu

Avatar

Community Advisor

Hi @MeenuRajput 

 

Updating the CQ MSM Content Update Action to exclude sling:alias worked for me. Updated sling value is sling:(?!(resourceType|resourceSuperType|alias)$).*

After updating the above value I was able to rollout sling:alias to the live copies.

 

Regards,

Jeevan

Avatar

Level 3

Hi @JeevanRaj , 

I'm sure it does get updated in Live Copies. Did you also try the same for language copies when you update property in master language page and translate to its associate language copy?
As @Ravi_Pampana has also mentioned in below comment that updating a Configuration: CQ MSM Content Update Action should also fix issue that I'm facing with Language copy but it didn't work. 


Avatar

Level 3

Hi @JeevanRaj , 

Did you get a chance to try same configuration on language copies specifically? It would be a great help if I can get confirmation as I'm still unable to get clarity if it should ideally work with some configuration change or is it the expected behaviour for some special properties to not update for language copies. In this case, I can look around the ways to handle and update the properties for existing pages using groovy script.

Thanks in advance.

Avatar

Community Advisor

I tried with language copies but the sling:alias didn't update as you said. Works for live copies though.

Avatar

Community Advisor

Hi,

 

Check the below node which excludes properties starting sling:  

/libs/msm/launches/rolloutconfigs/launch/contentUpdate

We need to add exclusion to the properties which we need to be part of rollout

 

Like : sling:(?!(resourceType|resourceSuperType)$).*

Avatar

Level 3

Hi Ravi, 
Thanks for your response. I did explore this configuration and also updated the property with sling:(?!(resourceType|resourceSuperType|alias)$).* regex expression so it would include sling:alias. However it didn't work for language copies as this configuration works for MSM when we trigger a rollout to live copies. 
Can you suggest something else that i might have missed here?
Best Regards,
Meenu

Avatar

Community Advisor

Hi Meenu,

Ideally language copy creates a launch page, I think contentupdate should work, can you check in system/console/configMgr whether the alias is added to the excludes list ? 

 

Configuration: CQ MSM Content Update Action

Avatar

Level 3

It is updated in system/console/configMgr and changes are correctly reflecting under apps config folder in updated nt:file. But property value for language copy is still not updating. 

Screenshot 2022-04-07 at 19.14.03.pngScreenshot 2022-04-07 at 19.14.19.png

Avatar

Community Advisor

Yes for Livecopy rollouts, we have MSM Rollout configurations available via OSGI..but for language copy updates which will get updated by creating launch copies and promoting them after, if jcr.* properties got updated in launch copies such as page titles, desc or alias fields and when we promote launches, updated content is not reflecting in Language copies as these are excluded under "/libs/msm/launches/rolloutconfigs/launch/contentUpdate"..

 

Question here is, how do we update a property for a node under "/libs" as it is not recommended and even Cloud Manager builds are failing because of it.

 

@arunpatidar @Jörg_Hoh

Avatar

Community Advisor

Hi @Shashi_Mulugu 

did you try overriding /libs/msm/launches/rolloutconfigs/launch at /apps/msm/launches/rolloutconfigs/launch/contentUpdate

I have not tried it but just wondering



Arun Patidar