2016-04-03 39 views
0

我有DAM圖像文件夾路徑,我想要做imageFolder.getChildren(),它返回一個沒有子節點資源的空迭代器。這隻發生在發佈實例中,它在作者實例中起作用。任何線索?權限不應該是因爲我可以解決路徑和要求孩子,它不是空的或任何東西。謝謝你的幫助。AEM CQ 6.1 DAM文件夾返回0兒童發佈

Resource imageFolder = resourceResolver.resolve(imageFolderUrl); 
for (Resource imageResource : imageFolder.getChildren()){ 
    //empty, doesn't run since getChildren() is 0 sized. 
} 
+0

打開發布實例並檢查圖像是否存在於imageFolder中。可能發生的情況是,您沒有複製作者發佈的圖像以發佈實例。如果不是首先發布所有圖像。 – Manisha

回答

0

最有可能的原因很簡單,有些內容是從發佈服務器「失蹤」(即它沒有被激活)。在發佈服務器上轉至/crx/de/index.jsp,查看imageFolder路徑中的內容。

似乎如下:

圖像文件夾本身在發佈時缺失。在這種情況下,resourceResolver.resolve(imageFolderUrl)將返回「不存在」資源而不是空值。 See the docs。你可以檢查這個:

if (imageFolder.isResourceType(Resource.RESOURCE_TYPE_NON_EXISTING)) { 
    //imageFolder doesn't exist 
} 

或者公共文件夾下沒有圖像。