java 用JCR API从层次对象中获取JSON

iibxawm4  于 2022-10-30  发布在  Java
关注(0)|答案(1)|浏览(116)

我了解JCR API的工作原理,并在Magnolia中使用。我想得到的结果是JSON对象My Node对象具有层次结构(每个子节点都有类型mgnl:category)

test_1
  test_a
  test_b
  test_c
     test_c1    
  test_d

如果我用

var session = context.getJCRSession("category");
  Iterable<Node> categoryItems = NodeUtil.collectAllChildren(
      session.getNode(nodePath),
      new NodeTypePredicate("mgnl:category")); 
  List<String> result = new ArrayList<>();
  for (Node node : categoryItems) {
    result.add(node.getName());
  }

我只得到一个孩子的名单,比如:[test_a,test_B,test_c,text_c1,test_d].我如何检查子节点是否有子节点?因为我需要[test_a, test_b, test_c: {text_c1}, test_d].,我认为递归可以在这里完成...但是我需要关于节点是否有子节点的信息...

相关问题