我试图将节点从一条路径移动到另一条路径&获取异常:
com.aem.tagmodels.MoveNodes Source is --> /content/dam/geometrixx/portraits/scott_reynolds.jpg
10.12.2014 16:38:27.952 *INFO* [127.0.0.1 [1418209707948] GET /content/AEMProject/Test/jcr:content/par/session_op.html HTTP/1.1] com.aem.tagmodels.MoveNodes Destination is --> /content/dam/geometrixx/drm
10.12.2014 16:38:27.952 *INFO* [127.0.0.1 [1418209707948] GET /content/AEMProject/Test/jcr:content/par/session_op.html HTTP/1.1] com.aem.tagmodels.MoveNodes Session --> session-38784
10.12.2014 16:38:27.952 *ERROR* [127.0.0.1 [1418209707948] GET /content/AEMProject/Test/jcr:content/par/session_op.html HTTP/1.1] com.aem.tagmodels.MoveNodes Error is javax.jcr.ItemExistsException: /content/dam/geometrixx/drm我已经检查过drm中没有与scott_reynolds.jpg同名的节点。下面是我的代码片段。
session.getWorkspace().move(source,destination);
session.save();谢谢
发布于 2014-12-10 11:59:35
您似乎使用父节点/content/dam/geometrixx/drm作为目标。这个目标是存在的,这就是为什么要获得异常,因为move()方法期望完整的新路径作为第二个参数:
严格地说,destAbsPath参数实际上是到新位置的父节点的绝对路径,附加了移动节点所需的新名称。
(来自Javadoc. )
您应该使用完整路径,父路径后面跟着新的名称,例如:/content/dam/geometrixx/drm/scott_reynolds.jpg。
https://stackoverflow.com/questions/27399632
复制相似问题