当路径存在于 AEM 上时,为什么我会得到 "javax.jcr.PathNotFoundException"?

Why do I get "javax.jcr.PathNotFoundException" when the path exists on AEM?

我正在尝试将模板的节点树复制到名为“root”的节点,如下所示:

Workspace workspace = session.getWorkspace();
workspace.copy(templatePath + "/initial/jcr:content/root", contentNode.getPath() + "/root");    
Node rootNode = contentNode.getNode("root");

templatePath 是模板的字符串。我正在尝试复制模板路径下的“/initial/jcr:content/root”并将其粘贴到节点contentNode 下名为“root”的子节点。 我 运行 上面的代码并在最后一行得到 javax.jcr.PathNotFoundException 。当我去 AEM 上的 CrxDe 时,节点树已经被复制和粘贴,虽然我收到错误消息,但路径确实存在。我试着添加

  session.save();

复制后。但是,尽管节点存在并已被复制,但同样的错误仍然存​​在。

是什么原因造成的?

在再次使用 contentNode 之前尝试添加 session.refresh() 而不是 session.save()