【发布时间】:2014-08-14 06:13:34
【问题描述】:
我是 adobe cq5 的新手。我在我的存储库中创建了一个页面测试 页面的内容节点。我有 100 个节点,例如 test-1、test-2、test-3 ....test-100。我想检索这些节点的选定属性,如名称、修改日期等。我该如何实现这 ?任何人都可以帮助解决这个问题。
【问题讨论】:
我是 adobe cq5 的新手。我在我的存储库中创建了一个页面测试 页面的内容节点。我有 100 个节点,例如 test-1、test-2、test-3 ....test-100。我想检索这些节点的选定属性,如名称、修改日期等。我该如何实现这 ?任何人都可以帮助解决这个问题。
【问题讨论】:
如果您想通过所有层次结构获取数据,请使用“infinity”选择器和“json”扩展名。
例如
http://localhost:4502/content/geometrixx/en/toolbar.infinity.json
【讨论】:
从您的问题标题中,您希望获得节点的 JSON 表示。这是一个内置功能(但应该在调度程序上被阻止):
只需将 .X.json 添加到您的路径中,而 X 是深度,例如http://localhost:4502/content.2.json
如果您想要 XML,您只需将扩展名 .xml 添加到您的路径中,尽管它只会返回指定页面的属性,而不是像 JSON 那样的完整层次结构。
【讨论】:
您可以立即使用parent-folder-of-your-nodes.N.json 符号,如上所示。
如果您需要仅包含这些属性的特定格式,您可以编写脚本或 servlet 并将其安装在特定选择器上,以便 parent-folder-of-your-nodes.your-selector.json 返回您的自定义格式。
http://sling.apache.org/documentation/the-sling-engine/servlets.html 文档应该对此有所帮助,并且在 Apache Sling 源代码中有大量此类 Sling servlet 和脚本的示例,例如在http://svn.apache.org/repos/asf/sling/trunk/launchpad/ 下
【讨论】: