我似乎无法弄清楚 Adobe AEM(以前的 CQ)是如何解析拇指 URL 的。
给定以下网址:
/content/geometrixx-outdoors/en.thumb.319.319.png
geometrixx-outdoors/components/page_home
“en”是对依赖于sling:resourceType的内容的引用。
“thumb”、“319”和“319”是选择器,但组件“page_home”没有匹配的jsp比如thumb.png.jsp来处理请求。
page_home 继承自geometrixx-outdoors/components/page
which 又继承自foundation/components/page
. 后者调用了一个jsp thumbnail.jpg.jsp
,但这也不匹配。
然后有一个奇怪的目录(即它不是一个组件),叫做/libs/foundation/components/primary/cq/Page
where we find thumb.png.jsp
。根据我添加的一些日志记录,这个脚本正在参与请求;虽然我不确定如何。它只包含包含 jcr:content 节点的 proxy.jsp。
我怀疑包括 jcr:content 意味着调用:
/content/info-site/en/_jcr_content.thumb.319.319.png
在这一点上,我不清楚会发生什么。似乎默认的 GET.java 必须启动或其他东西。但是,我找不到_jcr_content.png.jsp
or png.GET.java
。有一个类/var/classes/org/apache/jsp/libs/foundation/components/primary/cq/Page/thumb_png_jsp.java
看起来可以完成工作,但我只是不确定它是如何被调用的。
编辑:刚刚意识到这/var/classes/org/apache/jsp/libs/foundation/components/primary/cq/Page/thumb_png_jsp.java
是上述的编译版本,thumb.png.jsp
所以我想这是一个死胡同。