2017-09-12 3 views
1

In meinem jcr Knoten habe ich den Schlüssel subpage und es hält den Wert vom Typ String[]:Wie kann ich auf das im jcr-Knoten gespeicherte String-Array zugreifen?

{"title":"some title1", "url":"some url1"} 
{"title":"some title2", "url":"some url2"} 
{"title":"some title3", "url":"some url3"} 
{"title":"some title4", "url":"some url4"} 

wie kann ich darauf zugreifen in Java?

Ich habe versucht:

ValueMap contentValueMap = resource.getValueMap(); 

String subpages = contentValueMap.get("subpage", String.class); 

System.out.println(subpages); 

aber er druckt nur die erste Saite:

{"title":"some title1", "url":"some url1"} 

wie kann ich den Rest von ihnen erreichen?

+0

Dank, kann ich es verwenden, aber ich weiß nicht, wie es weitergeht, oder vielmehr - wie es in meinem Fall :( – randomuser1

Antwort

4

sollte diese

String[] subpages = contentValueMap.get("subpage", String[].class); 
+0

natürlich hilfreich sein kann, es funktioniert, wie komme ich es vorher nicht versucht haben. | Danke, Mann! – randomuser1

3

Wie awd erwähnt

String[] subPages = contentValueMap.get("subpage", String[].class); 

funktioniert und ist die empfohlene Lösung Work-. Dies ist der Zugriff auf Daten auf der Sling-Ebene. Nur falls Sie tiefer und Zugriff auf JCR Schicht tauchen müssen, werden Code aussehen

Node node=resource.adaptTo(Node.class); 
Value[] subPages = node.getProperty("subpage").getValues(); 

Dies wird hilfreich sein für Knoten Level-Operationen. Es ist jedoch ratsam, in höheren Schichten bei Sling oder AEM zu arbeiten.

Verwandte Themen