升级到AEM 6.5 SP23后,model.json中缺少allowedComponents

在Adobe Experience Manager中,升级到Service Pack 23后,allowedComponents元数据不再包含在发布实例上的model.json导出中。 出现此行为是因为AEM在导出期间处理组件策略的方式发生了变化。 本文解释了缺失allowedComponents的原因及其对依赖此元数据的集成的影响。

描述 description

环境

  • 产品: Adobe Experience Manager (AEM)

  • 版本:带有Service Pack 23的AEM 6.5

  • 实例:发布

  • 作者(SP21)

    • 在WCM模式下可见allowedComponents =编辑
    • ?wcmmode=disabled时可见
  • 作者(SP23):

    • 在WCM模式下可见allowedComponents =编辑
    • ?wcmmode=disabled时不可见

问题/症状

  • 升级到AEM 6.5 Service Pack 23 (SP23 ) 后,发布实例上的allowedComponents输出中缺少model.json字段。

  • 行为不同于以前的Service Pack(例如SP21),后者始终包含allowedComponents

  • 影响所有包含公开*.model.json的容器/布局组件的AEM JSON导出(allowedComponents)。 受影响的json 模型:

    • 页面级导出,例如:

      code language-none
      /content/your-site/en/home.model.json
      /content/your-site/en/landing-page.model.json
      
    • 容器级别的导出,例如:

      code language-none
      /content/your-site/en/home/_jcr_content/root.model.json
      /content/your-site/en/home/_jcr_content/root/container.model.json
      /content/your-site/en/home/_jcr_content/root/responsivegrid.model.json
      

影响

  • 发布实例上的任何allowedComponents响应中不再存在model.json

  • AEM发布不依赖此属性进行渲染;已解析并存储创作的内容。

  • 此更改不会破坏现成渲染和页面交付。

  • 在创作实例上:

    • 在编辑模式下没有影响;allowedComponents保持可见。
    • ?wcmmode=disabled与投放视图对齐时移除。

这是设计上的更改,不是错误。

解决方法 resolution

在AEM 6.5 SP23中,有意从发布端的allowedComponents响应中删除model.json字段。 这是预期行为,而不是错误。 依赖此字段的任何集成必须相应地更新。

注意这是一个临时解决方法。
·克隆SP21发布者,连接到创作复制代理。
·通过此节点发布内容,然后为外部使用者调度程序缓存JSON。
·仅适用于短期缓解(缓存刷新会删除文件)。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f