путь для родительской структуры выше: папка pdf -> /content/dam/example/corporate/pdf
, а значение папки pdf jcr:primarytype
равно Sling:OrderedFolder
, так же как и две другие папки '2013' '2014'...
если родительский «pdf» является типом страницы, я точно знаю, как перебирать структуру страницы и получать информацию о свойствах дочернего узла с помощью jcr node api.
но, к сожалению, «pdf» - это тип упорядоченной папки ...
теперь мне нужно перебрать структуру и получить ВСЕ пути PDF-файлов и сохранить их в ArrayList
, например, путь узла «2013exampleOne.pdf» равен /content/dam/example/corporate/pdf/2013exampleOne.pdf
, а путь «2014examplePDFTwo.pdf» равен /content/dam/example/corporate/pdf/2014examplePDFTwo.pdf
... и т.д... (этот список может серверировать другую часть приложения для загрузки pdf позже, но это не имеет ничего общего с моим текущим вопросом...)
вот мой собственный код для попытки (обратите внимание, это только часть моего сервлета):
@Override
protected void doGet(final SlingHttpServletRequest request,
final SlingHttpServletResponse response) throws ServletException,
IOException {
....//some more code
....
....
....
final ResourceResolver resourceResolver = request.getResourceResolver();
Node pdfJcrNode = resourceResolver.resolve("/content/dam/example/corporate/pdf").adaptTo(Node.class);
NodeIterator yearChildrenNodes;
try {
yearChildrenNodes = pdfJcrNode.getNodes();
while(yearChildrenNodes.hasNext()){
Node yearItemNode = yearChildrenNodes.nextNode();
while(yearItemNode.getNodes().hasNext()){
String pdfNodeAssetString = yearItemNode.getNodes().nextNode().getProperty("jcr:primaryType").getString();
if(pdfNodeAssetString.equals("dam:Asset")){
pdfPathList.add(yearItemNode.getNodes().nextNode().getPath().toString());
}
}
}
} catch (RepositoryException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
....
....
....
....//some more code
}
еще раз, путь к родительской папке «pdf» - /content/dam/example/corporate/pdf
любые предложения, чтобы помочь мне? Спасибо
ps: пожалуйста, предоставьте пример кода, чтобы помочь, ура