Page genera NullPointerException all’attivazione nei siti AEM
Quando una pagina viene attivata in Adobe Experience Manager, l'attivazione non riesce con un messaggio NullPointException a causa di una proprietà cq:lastReplicated mancante in una delle immagini di riferimento. Per risolvere il problema, segui i passaggi descritti in questo articolo.
Descrizione description
Ambiente
Adobe Experience Manager 6.x
Problema/Sintomi
Quando una pagina viene attivata in AEM, l’attivazione non riesce, con la seguente eccezione:
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)
Causa
Una delle immagini a cui fa riferimento la pagina presenta un problema con le relative proprietà.
Nell'immagine che ha causato i problemi mancava la proprietà cq:lastReplicated mentre erano presenti le proprietà cq:lastReplicatedBy e cq:lastReplicationAction.
Messaggi specificati
javax.servlet.ServletException: java.lang.NullPointerException
at com.day.cq.wcm.core.impl.reference.ActivationReferenceSearchServlet.doGet
at org.apache.sling.api.servlets.SlingSafeMethodsServlet.mayService
Risoluzione resolution
Risoluzione
-
Identificare tutte le immagini che presentano questo conflitto:
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 -
Una volta identificate le risorse, verifica se sono state replicate o meno.
-
Se Sì, aggiungi la proprietà
cq:lastReplicatedcon il tipo Data e copia la data dal server di pubblicazione. -
In entrambi i casi, è possibile rimuovere le proprietà
cq:lastReplicatedByecq:lastReplicatedActione riattivare l'immagine.