0

我有一个非常基本的代码片段,它获取对象的 currentNode 并查看它以获取它的子节点。除了某种原因,这不起作用,我不知道为什么。getChildNodes()假设返回一个可迭代的子级列表,但我得到的是:“不能循环使用类型为节点的元素和类型为Iterable的集合

Node currentNode = resource.adaptTo(Node.class)
for (Node n : JcrUtils.getChildNodes(currentNode)){
//do something
}

有任何想法吗?谢谢您的帮助。

4

1 回答 1

2

以下 Sling JSP 脚本适用于我。sling:defineObjects 标签提供 currentNode。

<%@page import="javax.jcr.Node,org.apache.jackrabbit.commons.JcrUtils" session="false"%>
<%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0"%>
<sling:defineObjects/>
<%
for (Node n : JcrUtils.getChildNodes(currentNode)){
  out.println(n.getPath());
}
%>
于 2013-06-04T09:54:42.830 回答