0

我想将页面复制到目标路径,如下所示:

Page page = "pagePath";  
PageManager pageManager = getResourceResolver().adaptTo(PageManager.class);
pageManager.copy(pagePath, pagePath + "/target/newPage", null, true, false);

如果页面“目标”存在(即新副本的潜在父级),这可以正常工作。但是,如果此页面不存在,PageManager 将抛出异常。

如果它不存在,我如何告诉 PageManager 它应该创建目标?(即类似于unix程序-p上的标志。)mkdir

4

1 回答 1

1

PageManager 如何知道使用什么内容来创建“目标”?

为什么不检查目标是否存在,如果不存在,则使用您要使用的任何模板自己创建它?

Page page = "pagePath";  
ResourceResolver resourceResolver = getResourceResolver();
Resource parent = resourceResolver.resolve(pagePath + "/target");
PageManager pageManager = resourceResolver.adaptTo(PageManager.class);

if (parent.getResourceType().equals(Resource.RESOURCE_TYPE_NON_EXISTING) {
    pageManager.create(pagePath, "target", "SOME_TEMPLATE_NAME", "SOME_TITLE");
}

pageManager.copy(pagePath, pagePath + "/target/newPage", null, true, false);
于 2013-08-22T20:23:49.433 回答