如何找出导致某个URL被解析为合成资源的原因?

时间:2014-04-03 10:32:26

标签: cq5 jcr sling aem

在我的Adobe CQ 5(CQ 5.6)安装中,由于某种原因,有一个URL(http://localhost:4503/services)正在解析为合成资源:

/services is resolved to a synthetic resource

这导致CQ显示以下页面,而不是404 Page Not Found页面:

Forbidden response when accessing /services

导致此行为的原因是什么?

1 个答案:

答案 0 :(得分:2)

您收到Forbidden错误不是因为/services的奇怪类型,而是因为您没有添加任何扩展名(您将获得相同的结果请求{{1} }})。我们尝试添加一些扩展程序:/content/geometrixx并不真正有用,但.html会产生有趣的发现:

.infinity.tidy.json

似乎{ "tagfilter": { "sling:resourceType": "/services/tagfilter.servlet", "servletClass": "com.adobe.cq.social.commons.impl.servlets.TagFilterServlet", "sling:resourceSuperType": "sling/bundle/resource", "servletName": "com.adobe.cq.social.commons.impl.servlets.TagFilterServlet" }, "tagfilter.servlet": { "sling:resourceType": "/services/tagfilter.servlet", "servletClass": "com.adobe.cq.social.commons.impl.servlets.TagFilterServlet", "sling:resourceSuperType": "sling/bundle/resource", "servletName": "com.adobe.cq.social.commons.impl.servlets.TagFilterServlet" }, ... 虚拟(或者,合成)路径,是servlet的父路径。实际上,您无法将servlet绑定到任何路径,最常用的选择是/services前缀,但/bin也是可行的。您将在 Apache Sling Servlet /脚本解析器和错误处理程序 OSGi配置中找到所有此类路径的列表。