我习惯于在 sling 中使用节点,并习惯于通过以下方式循环节点:
NodeIterator headerNode = currentNode.getNodes();
//loop through and do something
但是,如果我尝试循环访问资源的所有属性
,我该如何执行此操作。我真的迷失在这里了。所以目前我只是获取资源的单个属性。但是如果我想获取所述资源的所有属性该怎么办?
Resource getResource = resourceResolver.getResource("/content/AboutPage/jcr:content/list");
ValueMap property = getResource.adaptTo(ValueMap.class);
String title = property.get("jcr:lastEdited", String.class);
非常感谢任何帮助!
最佳答案
由于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
}
关于java - Sling - 循环访问资源的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16637097/