속성이 Adobe Experience Manager의 라이브 카피로 동기화되지 않음

Adobe Experience Manager(AEM)에서 MSM(다중 사이트 관리자)을 사용하여 페이지를 롤아웃하면 일부 사용자 지정 속성이 라이브 카피에 동기화되지 않습니다. MSM은 기본적으로 특정 속성을 제외합니다.

이 문제를 해결하려면 사용자 지정 속성을 포함하도록 롤아웃 구성을 업데이트합니다.

설명 description

환경

  • 제품: Adobe Experience Manager - 사이트
  • 환경: 개발
  • 기능: 다중 사이트 관리자(MSM) 롤아웃

문제/증상

언어 마스터 페이지(예: language-masters/en/home.html)에서 해당 라이브 카피로 페이지를 롤아웃하려고 할 때 일부 속성이 동기화되지 않습니다.

  • 언어 마스터의 속성(예: cq:styleIds)이 변경되었습니다.
  • 롤아웃 작업은 여러 라이브 카피(예: en-us/home.html, fr-fr/home.html)에 대해 수행됩니다.
  • 비교 시 라이브 카피 페이지는 언어 마스터의 새 속성 값을 반영하지 않습니다.
  • 이는 특정 cq 태그에 특히 적용됩니다.

원인

기본적으로 MSM은 롤아웃에서 특정 JCR 속성을 제외하도록 구성됩니다. 이렇게 하면 시스템 관리 필드(예: jcr:title, cq:lastModified, cq:tags, 등)가 실수로 덮어쓰이지 않도록 보호합니다. 또한 컨텐츠를 포함해서는 안 되는 내부 또는 구현별 메타데이터를 복사하는 것을 방지합니다. 기본 구성은 허용되는 일부 태그를 제외한 대부분의 cq 태그를 명시적으로 거부합니다.

해결 방법 resolution

MSM 롤아웃에 속성을 포함하려면 다음과 같이 OSGi 구성에서 제외된 속성을 업데이트합니다.

  1. 사용자 지정 속성을 포함하도록 OSGi 구성(CQ MSM Content Update Action - com.day.cq.wcm.msm.impl.actions.ContentUpdateActionFactory)에서 정규식을 수정합니다.

    예를 들어 cq:styleIds을(를) 포함하려면 다음에서 정규식을 변경합니다.

    cq:(?!(designPath|template|lastTranslationUpdate|targetEngine|robotsTags)$).*

    끝:

    cq:(?!(designPath|template|lastTranslationUpdate|targetEngine|robotsTags|styleIds)$).*

  2. 아래와 같이 클라우드 환경을 위한 배포 파이프라인에 업데이트된 구성을 추가합니다.

    code language-none
    cq.wcm.msm.action.excludedprops = [
      "jcr:.*",
      "sling:(?!(resourceType|resourceSuperType)$).*",
      "cq:(?!(designPath|template|lastTranslationUpdate|targetEngine|robotsTags|styleIds)$).*",
      "publishCampaignId"
    ]
    
  3. 개발 환경에서 변경 사항을 배포하고 확인합니다.

  4. 다시 롤아웃하고 모든 라이브 카피에서 속성이 올바르게 동기화되는지 확인합니다.

동기화를 위해 허용된 속성에 속성을 포함시키면 스타일 관련 구성이 MSM 작업을 통해 성공적으로 롤아웃되었는지 확인할 수 있습니다.

관련 읽기

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