I can't seem to figure out how Adobe AEM (formerly CQ) is resolving the thumb Url.
Given the following Url:
/content/geometrixx-outdoors/en.thumb.319.319.png
"en" is a reference to the content which relies on the geometrixx-outdoors/components/page_home
sling:resourceType.
"thumb", "319" and "319" are selectors, but the component "page_home" does not have a matching jsp such as thumb.png.jsp to handle the request.
page_home inherits from geometrixx-outdoors/components/page
which in turn inherits from foundation/components/page
. The later has a jsp called thumbnail.jpg.jsp
but that isn't a match either.
Then there is this strange directory (i.e., it isn't a component) called /libs/foundation/components/primary/cq/Page
where we find thumb.png.jsp
. According to some logging I added, this script is participating in the request; though I am not sure how. It simply includes the proxy.jsp which includes the jcr:content node.
I suspect that including jcr:content means a call to:
/content/info-site/en/_jcr_content.thumb.319.319.png
At this point, I am unclear what happens. It seems like a default GET.java must kick in or something. However, I can't find a _jcr_content.png.jsp
or png.GET.java
. There is a class at /var/classes/org/apache/jsp/libs/foundation/components/primary/cq/Page/thumb_png_jsp.java
which looks like it does the work, but I am just not sure how it gets called.
EDIT: Just realized that /var/classes/org/apache/jsp/libs/foundation/components/primary/cq/Page/thumb_png_jsp.java
is the compiled version of the aforementioned thumb.png.jsp
so I guess that is a dead end.