Distributionskön har blockerats med AccessDeniedException
När du försöker replikera sidinnehåll, XF eller andra resurser med hjälp av Quick Publish, Manage Publication eller Replicate blockeras distributionskön på författaren. Du kan verifiera detta genom att kontrollera distributionskön publish i distributionsgränssnittet (AEM > Tools > Deployment > Distribution). Lös problemet genom att följa stegen i det här dokumentet.
Beskrivning description
Miljö
- Experience Manager
- Experience Manager som molntjänst
Problem/symtom
När du försöker replikera visst sidinnehåll (eller XF och andra typer av resurser) med hjälp av Snabb-Publish, Hantera publikation eller Replikering, blir distributionskön på författaren Blockerad.
Detta kan du observera genom att kontrollera publiceringskön i distributionsgränssnittet (AEM - Verktyg - Distribution - Distribution):
Om du väljer kön för gyllene utgivare (post i fet stil i listan) får du mer information, och särskilt den berörda PATH (det kan finnas flera element här):
Om du tittar på fliken Logs visas följande motsvarande fel:
2023/03/08 12{1 1}26:238 - INFO - Begäran accepterad med distributionspaketet PackageMessage(pubSlingId=a1133c97-6809-411e-a435-4eea0ecbe889, reqType=ADD, pkgId=dstrpo ck-1678277486031-63159f4b-c577-4079-8741-d41660597d20, pkgType=journal_filevault, pkg kgLength=6330, pubAgentName=publish, userId=replication-service, paths=[ /content/wknd/fr] , deepPaths=[ ] ) at offset=158705
2023/03/08 12:11:27:459 - VARNING - Meddelande: Misslyckade försök (0/infinite) att importera distributionspaketet PackageMessage(pubSlingId=a1133c97-6809-411e a435-4eea0ecbe889, reqType=ADD, pkgId=dstrpck-1678277486031-63159f4b-c577-4079-874 1-d41660597d20, pkgType=journal_filevault, pkgLength=6330, pubAgentName=publish, userId=replication-service, paths=[ /content/wknd/fr] , deepPaths=[ :11: 21} ) vid offset=158705 på grund av javax.jcr.AccessDeniedException: OakAccess000: Åtkomst nekad, försöker importören igen senare,] Stacktrace: org.apache.sling.distribution.common.DistributionException: javax.jcr.AccessDeniedException: OakAccess000: Åtkomst nekad
…[ ]
Du måste rensa kön (eller ta bort det objektet) för att kunna ta bort blockeringen av kön.
Upplösning resolution
Trots att felet är javax.jcr.AccessDeniedException finns det förmodligen ingen relation med åtkomstkontrollistan/behörigheterna för distributionsanvändarna, men detta bör beaktas om följande scenario inte gäller för ditt ärende.
Diagnostik
Ovanstående fel kan inträffa i vissa situationer när det replikerade innehållet har en specifik konfiguration som är relaterad till den speciella egenskapen jcr:lockIsDeep .
För att bekräfta diagnosen måste du inspektera var och en av de angivna sökvägarna med något av följande verktyg som du kan komma åt/som kan användas:
- CRX/DE för DEV-instanser
- Databasläsaren
- skapa ett innehållspaket i pakethanteraren (det här alternativet ingår också i upplösningen)
Sedan måste du kontrollera noden jcr:content för varje sökväg som hittas i gränssnittet för distributionskön och verifiera om:
- Den har egenskapen
jcr:lockIsDeep="(Boolean)true" - Den har inte någon
jcr:lockOwner="xxx"-egenskap - ( it har inte ett
mix:lockable-värde ijcr:mixinTypes)
Om så är fallet bekräftas problemet eftersom egenskapen jcr:lockIsDeep inte ska finnas ensam. Den här egenskapen ska alltid anges tillsammans med jcr:lockOwner när Låser en sida.
Det går inte att bara ange egenskapen jcr:lockIsDeep, även med JCR-API:t, så grundorsaken till detta är oftast att ha installerat ett skadat -innehållspaket med den här egenskapen.
Upplösning
Den enda lösningen för att åtgärda innehållet är att installera ett paket i författaren som har rätt egenskaper inställda på motsvarande nod.
Du kan antingen skapa paketet från en annan instans med motsvarande innehåll eller om du bara har det här innehållet på den påverkade instansen kan du följa dessa instruktioner:
- Generera ett paket på den brutna instansen för den felaktiga sidan
- Ladda ned paketet
- Extrahera
.content.xmlför sidan/jcr:content - Ta bort raden manuellt med jcr:lockIsDeep
- Uppdatera paketet med den nya/fasta .content.xml
- Ladda upp och installera det ändrade paketet igen
Kontrollera sidegenskaperna igen och testa replikeringen/distributionen.