Expand my Community achievements bar.

SOLVED

SDI ESI - Dispatcher output for the component blank

Avatar

Level 2

Hello AEM Experts,

I am working on Sling Dynamic Include and ran into following issue at the dispatcher level and would appreciate any insight feedback.

Current setup:

1. SDI/ESI is enabled on publisher through configuration. The selector for component is set as "nocache" so the paths that dispatcher has to fetch when <#include tag is identified in the cached file on the dispatcher is 

/content/xyz/ca/en/dyanmic-components/_jcr_content/main/colcontainer_128710007.nocache.html

 

2. When I view the page directly on publisher all looks good. 

/content/xyz/ca/en/dyanmic-components.html

3. When I view the page on dispatcher none of the components that are dynamic shows up. Dispatcher is caching the page html with all the SDI and include tags to instruct dispatcher of presence of dynamic components.

4. What is interesting is when I hit the component URL redirect through dispatcher /content/xyz/ca/en/dyanmic-components/_jcr_content/main/colcontainer_128710007.nocache.html the response is 200OK however, the HTML is coming off as blank for this component. The same URL works if hit directly on publisher.

5. nocache selector is allowed through dispatcher filters. nocache extension is exempted from dispatcher cache (not cached)

 

Wondering if you have face this issue and could provide any insights?

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

HI @zaddm98685815 ,

Please double check your configuration that you have done for  " org.apache.sling.dynamicinclude.Configuration."
It should look something like below if component is not locked or not in initial of template.

    include-filter.config.enabled="{Boolean}true"
    include-filter.config.path="/content"
    include-filter.config.resource-types="[my-app/components/content/highly-dynamic]"
    include-filter.config.include-type="SSI"
    include-filter.config.add_comment="{Boolean}false"
    include-filter.config.selector="nocache"
    include-filter.config.ttl=""
    include-filter.config.required_header="Server-Agent=Communique-Dispatcher"
    include-filter.config.ignoreUrlParams="[]"
    include-filter.config.rewrite="{Boolean}true"

 

If components is in initial of template or locked then replace the path with "/conf".
or add additional configuration with "/conf" as path value instead of "/content".

You can follow below link for more update that needs to be done on dispatcher side:

https://experienceleague.adobe.com/en/docs/experience-manager-learn/foundation/development/set-up-sl....


Thanks
Tarun

View solution in original post

2 Replies

Avatar

Correct answer by
Community Advisor

HI @zaddm98685815 ,

Please double check your configuration that you have done for  " org.apache.sling.dynamicinclude.Configuration."
It should look something like below if component is not locked or not in initial of template.

    include-filter.config.enabled="{Boolean}true"
    include-filter.config.path="/content"
    include-filter.config.resource-types="[my-app/components/content/highly-dynamic]"
    include-filter.config.include-type="SSI"
    include-filter.config.add_comment="{Boolean}false"
    include-filter.config.selector="nocache"
    include-filter.config.ttl=""
    include-filter.config.required_header="Server-Agent=Communique-Dispatcher"
    include-filter.config.ignoreUrlParams="[]"
    include-filter.config.rewrite="{Boolean}true"

 

If components is in initial of template or locked then replace the path with "/conf".
or add additional configuration with "/conf" as path value instead of "/content".

You can follow below link for more update that needs to be done on dispatcher side:

https://experienceleague.adobe.com/en/docs/experience-manager-learn/foundation/development/set-up-sl....


Thanks
Tarun

Avatar

Level 7

Hi,

 

Are you using “SSI” or “ESI” for config “include-filter.config.include-type” .

 

were you able to solve your issue?

Client that I work have AMS, apache web server , dispatcher , cloud-front cdn. 

 

I would like to know which include type is correct for this set up.

 

thanks for any help.