Aem CQ5 currentPage.listChildren()未列出所有页面
我有一个页面,比如xyz,它包含许多子页面。一些子页面已启用CUG。在我的jsp中,我调用了currentPage.listChildren,但这只列出了以管理员身份登录时启用CUG的页面。如果匿名用户点击此jsp的url,则不会列出启用CUG的页面。下面是我的jsp代码:Aem CQ5 currentPage.listChildren()未列出所有页面,aem,sling,Aem,Sling,我有一个页面,比如xyz,它包含许多子页面。一些子页面已启用CUG。在我的jsp中,我调用了currentPage.listChildren,但这只列出了以管理员身份登录时启用CUG的页面。如果匿名用户点击此jsp的url,则不会列出启用CUG的页面。下面是我的jsp代码: Iterator<Page> itr = currentPage.listChildren(); while(itr.hasNext()) {
Iterator<Page> itr = currentPage.listChildren();
while(itr.hasNext()) {
Page ctxPage = itr.next();
String url = hostName + ctxPage.getVanityUrl()+".html";
%>
<a href="<%=url%>"><%=url%><br/>
<%
}
}
我还尝试以管理员的身份使用上述方法登录工作区,但没有成功
感谢您的帮助,谢谢 我认为这种行为是故意的-只有属于指定为CUG的用户组的用户才能查看这些页面 现在,这取决于您需要列出这些页面的目的 最简单的解决方案是将everyone添加到这些特定页面属性的CUG部分中的允许组中。但这一点从一开始就违背了拥有CUG的目的 警告:这样做将允许每个人访问这些页面-这可能不是您想要的 补充: 如果要保留访问权限,则需要转到节点级别并直接访问存储库。 此处显示了如何获得具有管理员权限的资源解析程序:
然后,您可以使用此资源解析程序获取页面并访问其子项。这样做的目的是在我的网站地图中列出这些页面。因此,当匿名用户点击url时,cug启用页面url应显示在网站地图中。如果您正在输出url,我假设您希望匿名用户也能够访问这些页面?只有经过身份验证的用户才能访问这些页面,但他们需要在网站地图中列出。啊,好的,因此,您需要保留访问权限-请参阅我的更新,谢谢@mish您的输入帮助了我,在我遵循此处描述的方法后,问题得到了解决