main.jsp如何在不在同一目录中时找到正确的header.jsp?

时间:2015-01-21 14:46:15

标签: jsp cq5 aem

我正在试图弄清楚文件是如何包含在CQ5页面组件中的,我对如何包含jsp文件感到有点困惑。

以下是基于开箱即用的geometrixx户外演示网站。

在/apps/geometrixx-outdoors/components/page_sidebar/main.jsp中,header.jsp包含如下:

<div class="page-header">
    <cq:include script="header.jsp"/>
</div>

但是header.jsp与main.jsp不在同一个文件夹中。实际上它是托管在 /apps/geometrixx-outdoors/components/page/header.jsp

所以我想知道在这种情况下页面如何知道在哪里找到正确的头文件。

期待您的回复。

谢谢, 唐纳德

1 个答案:

答案 0 :(得分:1)

ResourceTypes可以是其他人的扩展。在这种情况下,当在当前资源类型中找不到脚本时,将检查resourceSuperType。

如果查看/apps/geometrixx-outdoors/components/page_sidebar,您会看到指向geometrixx-outdoors/components/page的resourceSuperType属性。如果在page_sidebar上找不到header.jsp,则会在页面内部查找。如果在那里找不到,那么foundation/components/page就是下一个,因为它是geometrixx页面的resourceSuperType。