Skip to main content
Level 2
Feb 3, 2025 8:22 PM UTC

Option to exclude allowedComponents list in sling model exporter

Hi Team,

 

We have requirement to remove all the allowedComponent list from the page sling exporter, there are more than 50+ custom SPA components due to that model.json size is larger. In 6.5 version, is there any way to ignore allowedComponents ?

 

Thanks for the help in advance!!

7 replies

EstebanBustamante
Adobe Champion and Community Advisor
Adobe Champion and Community Advisor
Feb 4, 2025 11:17 AM UTC

Hi, 

You need to annotate the propery with @JsonIgnore and this will be ignored. Please check this; https://experienceleague.adobe.com/en/docs/experience-manager-learn/foundation/development/develop-sling-model-exporter#applying-jackson-annotations 

 

Hope this helps

Translate
Esteban Bustamante
Level 2
Feb 4, 2025 1:52 PM UTC

Thanks for responding, but getExportedAllowedComponents() is inside ResponsiveGrid.class, need to overlay the responsiveGrid class, not sure if that is best approach here. pls suggest.

Translate
chaudharynick
Adobe Champion
Adobe Champion
Feb 5, 2025 8:37 PM UTC

Hi @sai_krishna_1404 You can overlay the class and use Lombok delegate feature to do that to ensure any update in future doesn't impact the functionality.

refer to this: http://experience-aem.blogspot.com/2023/04/aem-cloud-service-delegate-annotation-extend-core-component-sling-models.html

Translate
Shiv_Prakash_Patel
Community Advisor
Community Advisor
Feb 4, 2025 12:10 PM UTC

@sai_krishna_1404 ,

Modify the Sling Model JSON export by using Jackson annotations as below:

1. Use the @JsonIgnore annotation to exclude allowedComponents

@Inject @JsonIgnore // Exclude allowedComponents from model.json private List<AllowedComponent> allowedComponents;

2. If modifying the model is not an option, you can exclude specific properties globally via OSGi configurations. 

Navigate to http://localhost:4502/system/console/configMgr, find com.adobe.cq.wcm.core.components.internal.models.v1.PageImpl, and remove allowedComponents from the exported properties list.

Regards,

Translate
Shiv Prakash
Level 2
Feb 4, 2025 2:36 PM UTC

Hi Shiv, Thanks for responding!
On your second approach, I don't see config for "com.adobe.cq.wcm.core.components.internal.models.v1.PageImpl" to exclude allowedComponents, is it part of Core Component version (https://experienceleague.adobe.com/en/docs/experience-manager-core-components/using/versions) ? I updated core version to 2.23.4, is it a custom config that need to be enabled & add exclusionList in the config, pls suggest!

Translate
kautuk_sahni
Level 9
Feb 18, 2025 8:29 AM UTC

@sai_krishna_1404 Did you find the suggestions helpful? Please let us know if you need more information. If a response worked, kindly mark it as correct for posterity; alternatively, if you found a solution yourself, we’d appreciate it if you could share it with the community. Thank you!

Translate
Kautuk Sahni