在CQ jsp中,只需调用currentPage.getPath()即可轻松访问currentPage对象。但我正在尝试删除任何脚本,并将它们分离到模型类中,并且无法弄清楚如何访问currentPage对象。我以为我可以这样做:
public void setResource(Resource resource){
resource.getPath()
}
但是返回的内容如下:
/content/home/subPage/jcr:content/banner
我只想返回 / content / home / subPage / 。我正在尝试使用资源来获取路径,但无法找到任何可以做到这一点。我知道这一定是小事,我只是在俯视。谢谢你的帮助!
答案 0 :(得分:13)
您正在获取jcr:content / banner,因为您正在调用页面内部组件的资源,而不是页面本身。
从组件中获取当前页面,您可以使用PageManager:
PageManager pageManager = resource.getResourceResolver()。adaptTo(PageManager.class);
Page currentPage = pageManager.getContainingPage(resource);