2014-01-14 64 views
1

我正在接受Adobe CQ5開發人員的培訓,我正在嘗試瞭解Component中當前資源的位置。例如,對於圖像組件創建窗口小部件時: enter image description here 的屬性是: The Properties are:瞭解當前資源的當前位置

,然後用複雜的組件:

enter image description here 的屬性是: The properties are:

這是爲什麼?我只是沒有看到與當前資源和jsp文件的關係以供參考。爲什麼複雜的組件只有./value而不是./image/value?

回答

1

主要原因是屬性相互關聯以定義如何繪製圖像,並且應用程序還有其他部分需要這種安排。當作者配置圖像時,AEM將在頁面的jcr:content節點下創建一個圖像節點。

/content/mysite/mypage/jcr:content/image/<attributes> 

基礎Image類還有AbstractImageServlet期望某些屬性出現在圖像節點上。

例如,請注意這兩個URL顯示相同的圖像。

1. http://localhost:4502/content/geometrixx/en/events/dsc.img.png 
2. http://localhost:4502/content/dam/geometrixx/banners/dsc.jpg 

第一URL所指向的節點cq:page並增加了一個img選擇器。此選擇器調用一個servlet,該servlet從在頁面的jcr:content節點下找到的第一個image節點中獲取信息。 image節點具有指向實際DAM圖像的fileReference屬性,該圖像是第二個URL。然後該servlet呈現fileReference屬性中指定的URL。

在您的第一個示例 - 徽標組件中,屬性是相對於組件的。如果在路徑par的頁面上有解析器,那麼如果將徽標組件添加到頁面中,則在cq:page節點下將具有以下路徑。

/content/mysite/mypage/jcr:content/par/logo/<attributes> 

現在,當您使用img選擇調用圖像的servlet,它會標誌的屬性考慮在內。

http://localhost:4502/content/mysite/mypage/jcr:content/par/logo.img.png 

對於第二個例子 - 絡合物組分 - 你是組織圖像的image節點下屬性來隔離來自其他設置的那些屬性。

+0

這開始有意義。我將需要重讀這幾次,但我開始看到創建組件的關係以及如何轉換爲實際創作站點以及如何設置參考。 – knennigtri