Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.

AEM 6.3 - How to read design properties within component helper for a dynamic editable template

Avatar

Level 2

I have a dynamic editable template with design dialog at page component. The design properties are persisted under /conf/myapp/settings/wcm/policies/myapp like this:

jWwwf.png

My requirement is to read these page level design properties and use them inside an Image component. I have design dialog at component level as well. So when I do ${currentStyle.property}, it renders the component level design property.

Next I wrote a helper class like this:

Designer designer = currentPage.getContentResource().getResourceResolver().adaptTo(Designer.class);
  Design pageDesign = designer.getDesign(currentPage);
  Style pageStyle = pageDesign.getStyle(pageDesign.getPath());
  return pageStyle.get(PROPERTY_ANALYTICSPAGETYPE, String.class);

This code is trying to read page level design properties under /etc/designs/myapp authored under cq:designPath and NOT reading under /conf policies. Now how I read the /conf policy nodes and access those properties?

How to access page level design properties within a component?

4 Replies

Avatar

Level 10

When Sling APIs do not work - you can always try reading the node props using the JCR API.

I am not aware of any examples that show how to read editable template node props using the Designer API.

Avatar

Level 2

Hi Sam,

I didnt want to access at JCR level. When policy changes, or new policies are added, I ll end up writing logic to search for right node. Was wondering if there is an API way of accessing these policies.

Avatar

Level 10

There is not an API that lets you specifically read editable template policies.

Avatar

Level 2

This question is closed. I got the answer from sof