Java 如何在AEM中复制节点树?

Java 如何在AEM中复制节点树?,java,aem,Java,Aem,我需要获取java代码,将[content/dam/img.jpg和子节点[jcr:content和metadata]]中的节点树复制到[etc/mynodes] Source path: conten/dam/img.jp Destin path: etc/mynodes 我想要复制节点:img.jpg>jcr:content>metadata您可以使用jcr API来玩内容节点,这里我使用了一个工作区的示例。复制将/content/dam/geometrixx/graphics子节点移动到

我需要获取java代码,将[content/dam/img.jpg和子节点[jcr:content和metadata]]中的节点树复制到[etc/mynodes]

Source path: conten/dam/img.jp
Destin path: etc/mynodes

我想要复制节点:img.jpg>jcr:content>metadata

您可以使用jcr API来玩内容节点,这里我使用了一个工作区的示例。复制/content/dam/geometrixx/graphics子节点移动到/etc/mynodes/test

复制(“/content/dam/geometricxx/肖像”,“etc/mynodes/test”)


@Hanin Jazi,如果答案有效,请接受。欢迎
package com.org.var.test;

import javax.jcr.Repository; 
import javax.jcr.Session; 
import javax.jcr.SimpleCredentials; 
import javax.jcr.Node; 
import javax.jcr.Workspace;
import org.apache.jackrabbit.commons.JcrUtils;
import org.apache.jackrabbit.core.TransientRepository; 

public class WorkspaceCopyTest { 

public static void main(String[] args) throws Exception { 

try { 

//Create a connection to the CQ repository running on local host 
 Repository repository = JcrUtils.getRepository("http://localhost:4502/crx/server");

   //Create a Session
   javax.jcr.Session session = repository.login( new SimpleCredentials("admin", "admin".toCharArray())); 

   Workspace workspace = session.getWorkspace();
    System.out.println(workspace.getName()); 
    //make sure you doesn't have test folder in /etc/mynodes/test it will create the test folder
  workspace.copy("/content/dam/geometrixx/portraits", "/etc/mynodes/test");
   System.out.println("workspace copy completed"); 

  session.logout();
  }
 catch(Exception e){
  e.printStackTrace();
  }
 } 
}