Aem cq包括不工作,404错误

Aem cq包括不工作,404错误,aem,Aem,我尝试使用以下代码在另一个组件中包含一个组件 <% String fakePath = resource.getPath() + "/nav-tabs"; %> <cq:include path="<%=fakePath%>" resourceType="ven/components/navMenu"/> 当我打开站点页面并试图编辑组件以编写数据时,浏览器控制台中出现以下错误,无法看到组件对话框 js:3318获取 404(未找到) 我也没有看到在内容树

我尝试使用以下代码在另一个组件中包含一个组件

<%
String fakePath = resource.getPath() + "/nav-tabs";
%>
<cq:include path="<%=fakePath%>" resourceType="ven/components/navMenu"/>

当我打开站点页面并试图编辑组件以编写数据时,浏览器控制台中出现以下错误,无法看到组件对话框

js:3318获取 404(未找到)

我也没有看到在内容树下创建的任何资源

有人能解释一下吗

谢谢,
Sri

看起来您将此组件直接放置在页面上,因为resource.getPath()会在您的案例中返回。创建页面时,可以使用页面模板创建初始内容

对于组件,您可以使用cq:template资源:

只需将cq:template资源放在组件下面。一旦您添加了一个新组件,它就会将其内容复制到您的资源中(类似于页面模板)

在您的情况下:_cq_template.xml:

<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:sling="http://sling.apache.org/jcr/sling/1.0"
      jcr:primaryType="nt:unstructured">
    <nav-tabs
        jcr:primaryType="nt:unstructured"
        sling:resourceType="ven/components/navMenu"/>
</jcr:root>


谢谢您的帮助。如果我将组件直接放在页面上,sling不会创建synthatic资源吗?我认为sling仍然会尝试使用给定的resourceType呈现不存在的资源,问题在于ext.js对话框实现中。它希望资源存在以呈现对话框。