2013-05-02 27 views
0

我似乎無法弄清楚Adobe AEM(以前的CQ)是如何解決拇指Url的。page.thumb.319.319.png如何在Adobe AEM中解決?

鑑於以下URL:

/content/geometrixx-outdoors/en.thumb.319.319.png 

「en」 是給其依賴於geometrixx-outdoors/components/page_home吊索內容的引用:resourceType爲。

「thumb」,「319」和「319」是選擇器,但組件「page_home」沒有匹配的jsp,如thumb.png.jsp來處理請求。

page_home繼承自geometrixx-outdoors/components/page,繼而從foundation/components/page繼承。後者有一個名爲thumbnail.jpg.jsp的jsp,但這也不匹配。

然後有這個奇怪的目錄(即它不是一個組件)叫/libs/foundation/components/primary/cq/Page我們發現thumb.png.jsp。根據我補充說的一些日誌記錄,這個腳本正在參與請求; 雖然我不知道如何。它只包含了包含jcr:content節點的proxy.jsp。

我懷疑,包括JCR:內容是指一個電話:

/content/info-site/en/_jcr_content.thumb.319.319.png 

在這一點上,我不清楚發生了什麼。這似乎是一個默認的GET.java必須踢或什麼的。但是,我找不到_jcr_content.png.jsppng.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的編譯版本,所以我想這是一個死衚衕。

回答

3

它不是通過jsp解析,而是通過com.day.cq.wcm.core.impl.servlets.ThumbnailServlet servlet組件解析。

此servlet已註冊以響應sling/servlet/default resourceType和拇指選擇器。所以它基本上會響應該選擇器的任何請求。

你可以在osgi web控制檯的組件列表中找到它

+0

謝謝!我跟蹤了cq-wcm-core-5.5.6.jar中的ThumbnailServlet類,其中OSGI-INF serviceComponents.xml使用「gif」,「png」或「jpg」擴展名將其註冊到「thumb」選擇器。 – jedatu 2013-05-07 19:17:30

相關問題