2017-09-12 4 views
1

나는 키 subpage이 있으며 유형 String[]의 값을 원하는 분야jcr 노드에 저장된 문자열 배열에 어떻게 액세스 할 수 있습니까? 내 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"} 

이 어떻게이 자바에서 액세스 할 수 있습니까?

내가 시도 :

ValueMap contentValueMap = resource.getValueMap(); 

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

System.out.println(subpages); 

하지만 첫 번째 문자열을 출력합니다

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

가 어떻게 그들의 나머지를 도달 할 수있다? AWD는

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

작품을 언급하고 권장되는 솔루션으로

+0

감사합니다. 사용할 수는 있지만 계속 진행하는 방법을 모르거나 내 경우 도움이 될 수 있습니다. ( – randomuser1

답변

4

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

물론 작동합니다. 이전에 시도하지 않은 방법 : | 고마워! – randomuser1

3

을 워크해야한다. 이것은 슬링 레이어에서 데이터에 액세스하고 있습니다. JCR 레이어에 더 깊이 들어가서 액세스해야 할 경우 코드는 다음과 같이 표시됩니다.

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

이것은 노드 수준 작업에 유용합니다. 그러나 Sling 또는 AEM의 상위 계층에서 작업하는 것이 좋습니다.