在AEM站点中激活时,页面抛出NullPointerException

描述 description

问题
在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)

环境
AEM 6.x

原因
页面引用的其中一个图像出现属性问题。

导致问题的图像缺少 cq:lastReplicated 属性,而它具有 cq:lastReplicatedBycq:lastReplicationAction 属性。

指定的消息

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