Implementatiefouten oplossen in AEM as a Cloud Service

Dit artikel behandelt implementatiefouten in Adobe Experience Manager (AEM) as a Cloud Service die worden veroorzaakt door aanpassingen in het initialisatiescript van de repository. Wanneer het opstellen van een eigenschapvertakking aan het ontwikkelingsstadium, kunnen deze fouten succesvolle plaatsing verhinderen en zijn niet gemakkelijk zichtbaar in de logboeken. Het probleem is verholpen door het analyseren van logbestanden voor foutopsporing.

Beschrijving description

Omgeving

  • Product: Adobe Experience Manager (AEM) as a Cloud Service - Plaatsen
  • Stadium: Ontwikkeling
  • Beperkingen: De directe wijzigingen via de Console van Felix zijn beperkt.

Probleem/symptomen

  • De implementatie van een functie-tak mislukt als gevolg van initialisatiefouten in de repository.

  • Logs vertoningsberichten zoals:

    code language-none
    Exception in a SlingRepositoryInitializer, SlingRepository service registration aborted
    javax.jcr.RepositoryException: Applying repoinit operation failed despite retry; set loglevel to DEBUG to see all exceptions.
    Last exception message from "Configuration PID 310, script[ 0] " was: CreatePath execution failed at cq(sling:Folder): javax.jcr.nodetype.ConstraintViolationException: org.apache.jackrabbit.oak.spi.state.ReadyOnlyBuilderException: This builder is read-only...
    
  • Fouten geven aan dat wordt geprobeerd alleen-lezen knooppunten of onveranderlijke onderdelen van de opslagplaats te wijzigen.

Resolutie resolution

Ga als volgt te werk om het probleem op te lossen:

  1. Stel het logniveau in op DEBUG voor repo-init-bewerkingen om gedetailleerde uitzonderingsgegevens op te halen tijdens de initialisatie van de opslagplaats. Aangezien directe toegang via de Console van Felix wordt beperkt, gebruik een configuratie van het douaneregistreren binnen uw project.

  2. Maak een OSGi-configuratiebestand onder de map /apps/<your-project>/config/ van uw project, zoals com.adobe.granite.logging.impl.LogManagerFactory.config .

    • Neem de volgende eigenschappen op in dit bestand:

      code language-none
      loggers=[ "org.apache.sling.jcr.repoinit.impl.RepositoryInitializerFactory"]
      org.apache.sling.jcr.repoinit.impl.RepositoryInitializerFactory.log.level=DEBUG
      
  3. Implementeer de bijgewerkte configuratie via Cloud Manager en controleer of gedetailleerde foutopsporingslogboeken voor repo-init-bewerkingen zichtbaar zijn na de implementatie.

  4. De controle zuivert logboeken voor extra context over fouten tijdens bewaarplaatsinitialisering, zoekend aanwijzingen van onbevoegde wijzigingen of pogingen om read-only knopen te veranderen.

  5. Zorg ervoor dat uw repo-init-script niet probeert knooppunten te maken of te wijzigen in onveranderlijke delen van de opslagplaats (bijvoorbeeld systeempaden).

  6. Verwijder of pas om het even welke CreatePath bevelen aan gericht knopen die als cq(sling:Folder) worden bepaald als zij in read-only gebieden verblijven. Als nieuwe knooppunten of structuren moeten worden toegevoegd, verpakt u deze wijzigingen afzonderlijk met behulp van inhoudspakketten die zijn geïmplementeerd op toegestane paden.

Als u deze stappen uitvoert, kunt u fouten bij de implementatie opsporen en verhelpen terwijl u de padbeperkingen van het AEM-systeem respecteert.

Gerelateerde lezing

Fouten opsporen in AEM as a Cloud Service-builds en -implementaties

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