AEM:在DEV/STAGE/PROD中进行DITA升级后,执行DAM资源预览和编辑失败

本文介绍Adobe Experience Manager环境中DAM资源预览和编辑功能存在的问题。

描述 description

环境


Adobe Experience Manager (AEM)(所有版本)

问题/症状


在AEM Assets管理UI中,预览某些图像(例如:单击资源)可能会短暂显示资源,然后预览会变为空白。 问题通常仅限于特定资产,而同一环境中的其他资产可能会继续正常预览。

受影响资产的浏览器网络跟踪显示失败的Dynamic Media查看器请求,类似于:

GET /is/image/content/dam/<asset-path>?req=set,json,UTF-8&handler=s7viewerss7sdkJSONResponse

该请求会返回:

HTTP 404
No preview server defined for root ID referenced in net path

相关的AEM日志可能包含:

Unable to forward request for root [ content] , no preview servlet defined for [ content]

解决方法 resolution

请按照以下步骤解决问题:

  1. 检查受影响资产的Dynamic Media元数据打开资产元数据节点,并验证下的以下属性:

    code language-none
    /content/dam/<asset-path>/jcr:content/metadata
    

    具体选中以下字段:

    • dam:scene7FileStatus
    • dam:scene7File
    • dam:scene7ID
    • dam:scene7Domain
    • dam:scene7CloudConfigPath
    • dam:scene7APIServer
    • dam:scene7Type

    正常运行的资产通常应具有:

    • dam:scene7FileStatus = PublishComplete
    • 已填充dam:scene7File
    • 已填充dam:scene7ID
  2. 与正在运行的资源进行比较如果可能,请将失败的资源与正确预览的同一环境中的其他图像进行比较。 在大多数情况下,失败的资源将缺少一个或多个必需的dam:scene7*属性,或者dam:scene7FileStatus将设置为不正常的值,例如:

    • NeedsReupload
    • PublishIncomplete
    • UploadFailed
    • UploadStart
    • ReprocessStart
  3. 重新上传或重新处理受影响的资源重新上传或重新处理资源将强制AEM/Dynamic Media重新生成缺少的Scene7链接元数据。 在验证用例中,重新上传将资源从:

    • dam:scene7FileStatus = NeedsReupload
    • 缺少dam:scene7File
    • 缺少dam:scene7ID

    达到健康状态:

    • dam:scene7FileStatus = PublishComplete
    • 已填充dam:scene7File
    • 已填充dam:scene7ID
  4. 如果资源是由内容复制、包安装或迁移引入的,请在目标环境中重新处理受影响的资源从其他环境复制的Assets可能会保留陈旧或不完整的Dynamic Media元数据,或者绕过目标环境中的正常Dynamic Media引入。 在目标环境中重新上传或重新处理会重新生成正确的本地dam:scene7*元数据。

  5. 重新上传或重新处理之后,验证预览恢复

    • 确认资源预览在 资源详细信息 中有效。
    • 确认资产不再向以下用户发出失败的预览请求:
    code language-none
    /is/image/content/dam/<asset-path>?req=set,json,UTF-8&handler=s7viewerss7sdkJSONResponse
    
    • 确认现在使用dam:scene7File中的有效Scene7句柄解析资源。
  6. 对于批量影响,请按状态识别类似的资源如果多个资源受到影响,请查询具有不正常的dam:scene7FileStatus值的资源,并重新处理该子集,而不是整个DAM树。

原因

问题是由受影响的资产处于 不完整或过时的Dynamic Media同步状态 导致的。 在这种情况下,资源存在于AEM中,但缺少资源详细信息预览解析所需的有效Scene7链接元数据,例如dam:scene7Filedam:scene7ID或健康的dam:scene7FileStatus

因此,资产详细信息将尝试使用/content/dam/...下的存储库路径而不是有效的Scene7资产句柄来加载Dynamic Media预览,并且预览请求失败,导致预览区域变为空白。

此状态通常在以下情况下引入:

  • Dynamic Media同步/上传未干净完成。
  • 资源是从其他环境复制或迁移的。
  • 从其他环境转移了陈旧的dam:scene7*元数据。
  • 迁移或内容复制后,未在目标环境中完全重新处理资产。
recommendation-more-help
experience-cloud-kcs-help-kbarticles