如何访问存储在jcr节点中的字符串数组?
问题描述:
在我的JCR节点我有钥匙subpage
,并持有String[]
类型的值:如何访问存储在jcr节点中的字符串数组?
{"title":"some title1", "url":"some url1"}
{"title":"some title2", "url":"some url2"}
{"title":"some title3", "url":"some url3"}
{"title":"some title4", "url":"some url4"}
我怎么能访问它在Java?
我想:
ValueMap contentValueMap = resource.getValueMap();
String subpages = contentValueMap.get("subpage", String.class);
System.out.println(subpages);
,但只打印第一个字符串:
{"title":"some title1", "url":"some url1"}
我怎么能达到他们的休息吗?
答
这应该与工作
String[] subpages = contentValueMap.get("subpage", String[].class);
+0
当然,它的工作原理如何我以前没有尝试过:谢啦! – randomuser1
答
由于AWD提到
String[] subPages = contentValueMap.get("subpage", String[].class);
作品,是推荐的解决方案。这是在Sling层访问数据。只要您需要深入了解并访问JCR层,代码将如下所示
Node node=resource.adaptTo(Node.class);
Value[] subPages = node.getProperty("subpage").getValues();
这将对节点级操作有所帮助。但建议在Sling或AEM的更高层工作。
谢谢,我可以使用它,但我不知道如何继续,或者更确切地说 - 如何在我的情况下有所帮助:( – randomuser1