캠페인: AEM에서 템플릿 위치를 변경한 후 AEM 템플릿 동기화가 실패합니다

Adobe Campaign에서 .campaign.link.json 엔드포인트를 통해 AEM 이메일 템플릿을 동기화하려고 하면 템플릿이 존재하고 기본 동기화가 작동하는 것처럼 보여도 JST-310000 JSON.parse 오류로 작업이 실패할 수 있습니다. 이 문제는 사용자 지정 AEM 이메일 페이지 구성 요소가 Sling 서블릿 해결에 필요한 상대적 리소스 유형 대신 절대 저장소 경로를 사용하여 이메일 핵심 구성 요소 페이지에서 상속될 때 발생할 수 있습니다.

설명 description

고객이 이전 AEM 이메일 템플릿은 계속 작동하지만 Campaign에서 열거나 동기화할 때 이메일 페이지 구성 요소를 기반으로 하는 최신 템플릿이 작동하지 않는다고 보고했습니다.

JSON.parse로 인해 스크립트 'nms:amcIntegration.js’을(를) 컴파일하는 동안 Campaign에서 표시되는 증상은 JST-310000 오류입니다.

고객은 이메일 핵심 구성 요소를 기반으로 빌드되고 기본적으로 편집 가능한 AEM의 새 캠페인 템플릿 페이지를 푸시하려고 했습니다.
사용 중인 리소스 유형은 다음과 같습니다. /apps/aem-crm/components/email/page 및 superType은 다음과 같습니다. /apps/core/email/components/page/v1/page. Adobe에서는 이전 mcm 구성 요소는 더 이상 사용되지 않을 예정입니다.

AEM과 Campaign 간의 전반적인 동기화가 작동하며 템플릿이 선택 목록에 표시되었지만 이메일 핵심 구성 요소의 새 템플릿을 선택했을 때 오류가 발생했습니다.

고객이 Campaign의 AEMResourceTypeFilter 옵션에 적절한 값을 추가했습니다.
mcm/campaign/components/newsletter,mcm/campaign/components/campaign_newsletterpage,mcm/neolane/components/newsletter,/apps/aem-crm/templates/campaign-newsletter-template-2025,/apps/aem-crm/components/email/page,/apps/core/email/components/page/v1/page

해결 방법 resolution

근본 원인

AEM의 LinkServlet(.campaign.link.json 끝점을 처리하고 Campaign에서 예상하는 JSON을 반환함)이 문제가 있는 템플릿에 대해 호출되지 않으므로 동기화가 실패합니다. 대신 Sling의 기본 POST 처리기가 실행되고 HTML 응답을 반환합니다. 그러면 Campaign이 구문 분석에 실패합니다(JSON.parse 오류).

이 문제는 고객의 구성 요소 /apps/aem-crm/components/email/page가 절대 경로를 사용하여 sling:resourceSuperType을(를) 선언하기 때문에 발생합니다.

sling:resourceSuperType = “/apps/core/email/components/page/v1/page”

LinkServlet이 상대 양식 core/email/components/page/v1/page(/apps/ 없이)에 대해 등록됩니다. Sling은 이러한 키를 서로 다른 키로 취급하므로 구성 요소 계층 구조를 이동하여 서블릿을 찾을 수 없습니다.

해상도

고객의 사용자 지정 구성 요소 정의(/apps/aem-crm/components/email/page/.content.xml(해당 AEM 프로젝트 소스)에서 sling:resourceSuperType을(를) 절대 경로에서 상대 양식으로 변경합니다.

< !— 이전 —>
sling:resourceSuperType=“/apps/core/email/components/page/v1/page”

< !— 후 —>
sling:resourceSuperType=“core/email/components/page/v1/page”

이 변경 후에 구성 요소 패키지를 다시 배포합니다. 그런 다음 Sling이 superType 체인을 올바르게 실행하고 LinkServlet을 호출하여 JSON을 Campaign으로 반환하고 동기화 오류를 해결합니다.

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