The examples given below use the live demo pages here. If you need more time for debugging, download the demo bundle and try this locally, as the demo is periodically restarted.
These tags are rendered via the Sitemesh rendering listener referenced by mechanism: sitemesh in the fragment definition.
You can see that the <mgnl:injecturi> tags are replaced by the content of the navigation area when rendering the travel page.
The sitemesh filter does that.
Removing the mgnl:injecturi tag
If you want to remove the mgnl:injecturi tag, then:
Remove the /server/rendering/engine/listeners/personalizedComponent.
Set /modules/cache/config/contentCaching/defaultPageCache/cachePolicy@includePersonalizedDescendants to true.
How is DPC used for component personalization?
The HTML downloaded in the previous section also contains component personalization.
You should find at least two items for this component in cache browser.
One of those items is downloadable. It is a variant (e.g. for Europe, the Middle East, and Africa) that is inserted into the cached home page instead of the <mgnl:inject> tags if someone, for example, requests the page from Europe.
One of them is just a personalized component marker, and downloading the cache content results in the following error.
Error while downloading cache content: DefaultCacheKey{uri='/main/0',
serverName='demopublic.magnolia-cms.com', locale='en', channel='all',
params={}', secure='true', method='get', additionalAttributes='{}'}:
Requested cache entry is of type
info.magnolia.advancedcache.personalization.cache.PersonalizedCacheEntry
...
Copy
Component is both dynamic and personalized
Since Magnolia 6.2.29, injecting of a component variant tag is disabled when the component is both dynamic and personalized.
The component then fully depends on the tag injected for the dynamic fragment. This works correctly only with TTL set to 0. Any other setting can lead to unpredictable behaviour.