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

請依照下列步驟解決問題:

  1. 嘗試使用AEM UI或REST API為受影響的頁面建立啟動,以確認發生錯誤。

  2. 在受影響的頁面上檢查即時副本中繼資料:

    • 開啟CRXDE Lite (或您偏好的存放庫瀏覽器)並導覽至受影響頁面的jcr:content節點。

    • 驗證jcr:content下是否存在cq:LiveSyncConfig節點。

    • 檢查jcr:content上的jcr:mixinTypes屬性,並檢視cq:LiveSync是否遺失。

  3. 如果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。

recommendation-more-help
experience-cloud-kcs-help-kbarticles