首页 > 解决方案 > javax.jcr.version.VersionException:无法设置属性。节点已签入

问题描述

我正在尝试在 DAM 中上传图像并且工作流 (OOTB) 卡住了。以下是我得到的错误。

12.07.2018 09:58:27.712 *ERROR* [JobHandler: /etc/workflow/instances/server1/2018-07-11_2/update_asset_923:/content/../../../../../../icon-1.png/jcr:content/renditions/original] com.day.cq.dam.core.impl.AssetImpl addRendition: cannot add new rendition [cq5dam.thumbnail.48.48.png] for asset [/content/dam/____________________________]: 
com.adobe.granite.asset.api.AssetException: javax.jcr.version.VersionException: Cannot set property. Node is checked in.
    at com.adobe.granite.asset.core.impl.DefaultRenditionHandler.setRendition(DefaultRenditionHandler.java:79)
    at com.adobe.granite.asset.core.impl.AssetImpl.setRendition(AssetImpl.java:131)
    at com.day.cq.dam.core.impl.AssetImpl.addRendition(AssetImpl.java:490)
    at com.day.cq.dam.core.impl.AssetImpl.addRendition(AssetImpl.java:484)
    at com.day.cq.dam.core.impl.RenditionMakerImpl$PlanBasedTemplate.apply(RenditionMakerImpl.java:129)
    at com.day.cq.dam.core.impl.RenditionMakerImpl.generateRenditions(RenditionMakerImpl.java:184)
    at com.day.cq.dam.core.process.CreateThumbnailProcess.execute(CreateThumbnailProcess.java:121)
    at com.day.cq.workflow.compatibility.CQWorkflowProcessRunner.execute(CQWorkflowProcessRunner.java:93)
    at com.adobe.granite.workflow.core.job.HandlerBase.executeProcess(HandlerBase.java:215)
    at com.adobe.granite.workflow.core.job.JobHandler.process(JobHandler.java:143)
    at org.apache.sling.event.impl.jobs.queues.JobQueueImpl.startJob(JobQueueImpl.java:395)
    at org.apache.sling.event.impl.jobs.queues.JobQueueImpl.access$100(JobQueueImpl.java:66)
    at org.apache.sling.event.impl.jobs.queues.JobQueueImpl$1.run(JobQueueImpl.java:238)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:622)
    at java.lang.Thread.run(Thread.java:745)
Caused by: javax.jcr.version.VersionException: Cannot set property. Node is checked in.
    at org.apache.jackrabbit.oak.jcr.session.NodeImpl$35.checkPreconditions(NodeImpl.java:1330)
    at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.prePerform(SessionDelegate.java:606)

图片上传后,我可以看到资产节点上设置的属性是

在此处输入图像描述

这可能是什么原因。

标签: aem

解决方案


这是一个影响 AEM 6.0、6.1 和 6.2 的已知产品错误。

来自官方文档

这是一个已知的产品错误 CQ-4215298。当用户创建版本或发布(“激活”)被另一个用户锁定的页面时,它会导致页面进入不一致状态。

解析度

此问题已在 AEM6.3 和 AEM6.2 SP1 Cumulative Fix Pack 8 中修复。

无论是否应用了修订包,您都必须修复损坏的页面。要修复页面,请按照以下步骤操作:

转到 /crx/explorer/index.jsp 并以管理员用户身份登录。打开内容资源管理器。浏览到损坏页面的 jcr: content 子节点。例如:/content/geometrixx/en/services/jcr:content 转到版本 => 签出。转到 /sites.html UI 并浏览到该页面并将其打开以进行编辑。单击左上角的锁定图标解锁页面。


推荐阅读