AEM サイトでアクティブ化すると、ページが NullPointerException をスローする

Adobe Experience Managerでページをアクティベートすると、参照される画像の 1 つに cq:lastReplicated プロパティがないことが原因で、アクティベートが失敗し、NullPointException メッセージが表示されます。 この記事で説明している手順に従って、問題を解決します。

説明 description

環境

Adobe Experience Manager 6.x

問題/症状

AEMでページをアクティベートすると、アクティベーションは次の例外で失敗します。

javax.servlet.ServletException: java.lang.NullPointerException
at com.day.cq.wcm.core.impl.reference.ActivationReferenceSearchServlet.doGet(ActivationReferenceSearchServlet.java:175)
at org.apache.sling.api.servlets.SlingSafeMethodsServlet.mayService(SlingSafeMethodsServlet.java:269)

原因

ページで参照されているいずれかの画像が、そのプロパティに問題がありました。

問題の原因となっている画像には、cq:lastReplicatedBy および cq:lastReplicationAction プロパティがありましたが、cq:lastReplicated プロパティがありませんでした。

指定メッセージ

javax.servlet.ServletException: java.lang.NullPointerException
at com.day.cq.wcm.core.impl.reference.ActivationReferenceSearchServlet.doGet
at org.apache.sling.api.servlets.SlingSafeMethodsServlet.mayService

解決策 resolution

解決策

  1. この競合が発生しているすべてのイメージを特定します。

    code language-none
    SELECT * FROM [ dam:Asset]  AS parent INNER JOIN [ nt:base]  AS child ON ISCHILDNODE(child, parent) WHERE ISDESCENDANTNODE(parent, '/content/dam/journey/') AND child.[ cq:lastReplicated]  IS NULL AND child.[ cq:lastReplicatedBy]  IS NOT NULL
    
  2. アセットを特定したら、これらのアセットがレプリケートされたかどうかを確認します。

  3. はい の場合は、プロパティ cq:lastReplicated をタイプ 日付 で追加し、日付をパブリッシュサーバーからコピーします。

  4. どちらの場合でも、cq:lastReplicatedBycq:lastReplicatedAction のプロパティを削除して、画像を再度アクティベートできます。

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