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:

  1. CRX/DE för DEV-instanser
  2. Databasläsaren
  3. 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 i jcr: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:

  1. Generera ett paket på den brutna instansen för den felaktiga sidan
  2. Ladda ned paketet
  3. Extrahera .content.xml för sidan/jcr:content
  4. Ta bort raden manuellt med jcr:lockIsDeep
  5. Uppdatera paketet med den nya/fasta .content.xml
  6. Ladda upp och installera det ändrade paketet igen

Kontrollera sidegenskaperna igen och testa replikeringen/distributionen.

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