2014-11-17 108 views
0

我有一個頁面說xyz包含許多子頁面。一些子頁面「啓用CUG」。在我的jsp中,我打電話給currentPage.listChildren(),但是隻有當我以管理員身份登錄時,纔會列出啓用CUG的頁面。如果匿名用戶點擊這個jsp的url,那麼CUG啓用的頁面不會被列出。下面是我的JSP代碼:CQ5 currentPage.listChildren()不會列出所有頁面

Iterator<Page> itr = currentPage.listChildren(); 

       while(itr.hasNext()) { 

        Page ctxPage = itr.next(); 
        String url = hostName + ctxPage.getVanityUrl()+".html"; 
        %> 
         <a href="<%=url%>"><%=url%><br/> 
        <% 
        } 
       } 

我也使用方法描述here試圖登錄到工作區作爲管理員,但沒有奏效。

任何幫助表示讚賞,謝謝!

回答

0

我認爲這種行爲是滿足的 - 只有屬於指定爲CUG的用戶組的用戶才能查看這些頁面。

現在,這取決於您需要列出這些頁面的目的。

最簡單的解決方案是將「所有人」添加到這些特定頁面屬性的CUG部分中的「已接受組」。但是這首先擊敗了CUG的目的。

注意:這樣做會允許「所有人」訪問這些頁面 - 這可能不是您想要的。

ADDITION: 如果您想要保留訪問權限,您需要下降到節點級別並直接訪問存儲庫。 這顯示如何可以得到一個「資源解析器擁有管理員權限」: https://cqwemblog.wordpress.com/2013/12/29/ways-to-access-jcr-repository-in-cq5/

然後,您可以使用此資源解析器讀取你的網頁和訪問它的孩子。

+0

這樣做的目的是在我的站點地圖中列出這些頁面。因此,當匿名用戶點擊網址http://www.example.com/sitemap.xml時,cug啓用頁面url應顯示在站點地圖中。 – Rakesh

+0

如果您要輸出網址,我假設您希望匿名用戶也可以訪問這些網頁? – mish

+0

只有經過身份驗證的用戶才能訪問這些頁面,但他們需要在站點地圖中列出。 – Rakesh

相關問題