AEM Sites:在具有不一致即時副本設定的頁面上建立啟動時,解決500錯誤
本文說明如何解決在Adobe Experience Manager (AEM)網站中建立頁面啟動時,由於即時副本中繼資料不一致而發生的500內部伺服器錯誤。 解決方案包括更正受影響頁面上的即時副本設定。
說明 description
環境
Adobe Experience Manager (AEM) Sites,所有支援的版本和部署模型(內部部署、Adobe Managed Services和AEM as a Cloud Service)。
症狀
- 嘗試為特定頁面建立啟動時,若使用REST API,作業會失敗,並出現500內部伺服器錯誤,或在AEM UI中出現 無法提交表單 錯誤。
- 此問題僅存在於某些頁面;其他頁面允許建立啟動項而不會發生錯誤。
原因
當頁面的即時副本設定不完整時,會發生此錯誤: jcr:content節點包含cq:LiveSyncConfig節點(表示即時副本關係),但jcr:mixinTypes屬性中缺少必要的cq:LiveSync mixin型別。 這種不一致會導致AEM在啟動建立期間無法正確處理即時副本狀態,進而產生500錯誤。
解決方法 resolution
請依照下列步驟解決問題:
-
嘗試使用AEM UI或REST API為受影響的頁面建立啟動,以確認發生錯誤。
-
在受影響的頁面上檢查即時副本中繼資料:
-
開啟CRXDE Lite (或您偏好的存放庫瀏覽器)並導覽至受影響頁面的
jcr:content節點。 -
驗證
jcr:content下是否存在cq:LiveSyncConfig節點。 -
檢查
jcr:content上的jcr:mixinTypes屬性,並檢視cq:LiveSync是否遺失。
-
-
如果
jcr:mixinTypes中缺少cq:LiveSync,請新增它:-
在CRXDE Lite中,選取
jcr:content節點。 -
編輯
jcr:mixinTypes屬性並將cq:LiveSync新增到mixin型別清單中。 儲存您的變更。 -
或者,使用存放庫API或POST請求來更新屬性。 例如(以實際值取代預留位置):
code language-none curl -u : -X POST "https:///content//jcr:content" \ -d "jcr:mixinTypes=" \ -d "jcr:mixinTypes=cq:LiveSync" \ -d "jcr:mixinTypes@TypeHint=Name[ ] " \ -d "charset=UTF-8" -
確定您在更新中包含所有現有的mixin型別。
4. 重試建立受影響頁面的啟動。 現在應該會成功且沒有錯誤。
5. 如果其他頁面表現出相同的症狀,請對每個受影響的頁面重複步驟2至4。