Sling - 循环遍历资源的属性

时间:2013-05-19 16:55:58

标签: java sling

我习惯在吊索中使用节点,习惯于通过节点循环:

NodeIterator headerNode = currentNode.getNodes();
//loop through and do something

但是,如果我试图遍历资源的所有properties,我将如何做到这一点。我真的迷失在这里。所以目前我只是抓住资源的一个属性。但是如果我想获取所述资源的所有属性怎么办呢?

Resource getResource = resourceResolver.getResource("/content/AboutPage/jcr:content/list");
ValueMap property = getResource.adaptTo(ValueMap.class);
String title = property.get("jcr:lastEdited", String.class);

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

ValueMap扩展java.util.Map时,您可以使用entrySet()方法:

Resource getResource = resourceResolver.getResource("/content/AboutPage/jcr:content/list");
ValueMap property = getResource.adaptTo(ValueMap.class);
for(Entry<String, Object> e : property.entrySet()) {
    String key = e.getKey();
    Object value = e.getValue();
    //use the key and value here
}