升級到AEM 6.5 SP23後model.json中缺少allowedComponents
在Adobe Experience Manager中,升級至Service Pack 23後,allowedComponents中繼資料不再包含在發佈執行個體上的model.json匯出中。 出現此行為是因為AEM在匯出期間處理元件原則的方式有所變更。 本文說明遺失allowedComponents的原因,及其對依賴此中繼資料的整合的影響。
說明 description
環境
-
產品: Adobe Experience Manager (AEM)
-
版本: AEM 6.5含Service Pack 23
-
執行個體:發佈
-
作者(SP21):
- 在WCM模式下可見
allowedComponents=編輯 ?wcmmode=disabled時可見
- 在WCM模式下可見
-
作者(SP23):
- 在WCM模式下可見
allowedComponents=編輯 ?wcmmode=disabled時不可見
- 在WCM模式下可見
問題/症狀
-
升級至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發行者,附加至作者復寫代理程式。
·透過此節點發佈內容,然後為外部消費者執行Dispatcher快取JSON。
·僅適用於短期緩解(快取排清會移除檔案)。