Cet article explique comment réparer les bibliothèques client endommagées dues à une erreur AccessDeniedException.

Problème

Vos pages AEM ne chargent pas JavaScript ou CSS et l'erreur suivante s'affiche dans le fichier journal :

22.11.2016 17:16:56.789 *ERROR* [192.150.10.207 [1479853014365] GET /content/www/en-us/homepage.html HTTP/1.1] com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl Cannot load js libraries
javax.jcr.AccessDeniedException: null
at org.apache.jackrabbit.oak.jcr.session.NodeImpl$1.perform(NodeImpl.java:177)
at org.apache.jackrabbit.oak.jcr.session.NodeImpl$1.perform(NodeImpl.java:168)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.perform(SessionDelegate.java:208)
at org.apache.jackrabbit.oak.jcr.session.ItemImpl.perform(ItemImpl.java:112)
at org.apache.jackrabbit.oak.jcr.session.NodeImpl.getParent(NodeImpl.java:168)
at com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl.loadLibrary(HtmlLibraryManagerImpl.java:1545)
at com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl.loadLibs(HtmlLibraryManagerImpl.java:1475)
at com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl.assertLoaded(HtmlLibraryManagerImpl.java:1336)
at com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl.assertResolved(HtmlLibraryManagerImpl.java:1354)
at com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl.getLibrary(HtmlLibraryManagerImpl.java:982)
at com.adobe.granite.ui.clientlibs.impl.HtmlLibraryManagerImpl.getLibrary(HtmlLibraryManagerImpl.java:967)
at com.adobe.acs.commons.rewriter.impl.VersionedClientlibsTransformerFactory.getVersionedPath(VersionedClientlibsTransformerFactory.java:201)
at com.adobe.acs.commons.rewriter.impl.VersionedClientlibsTransformerFactory.rebuildAttributes(VersionedClientlibsTransformerFactory.java:148)
at com.adobe.acs.commons.rewriter.impl.VersionedClientlibsTransformerFactory.versionClientLibs(VersionedClientlibsTransformerFactory.java:138)
at com.adobe.acs.commons.rewriter.impl.VersionedClientlibsTransformerFactory.access$200(VersionedClientlibsTransformerFactory.java:82)
at com.adobe.acs.commons.rewriter.impl.VersionedClientlibsTransformerFactory$VersionableClientlibsTransformer.startElement(VersionedClientlibsTransformerFactory.java:245)

Environnement

AEM 6.2 et versions ultérieures.

Cause

Il manque des autorisations pour l'utilisateur clientlibs-service.

Résolution

Pour corriger l’erreur AccessDeniedException et résoudre le problème, procédez comme suit :

  1. Accédez à l'application Web http://host:port/crx/de/index.jsp et connectez-vous en tant qu'administrateur.

  2. Accédez aux dossiers ci-dessous et vérifiez que l'utilisateur de clientlibs-service dispose des autorisations suivantes :

    • /apps Allow jcr:read
    • /libs Allow jcr:read
    • /etc Allow jcr:read
    • /var/clientlibs Allow jcr:read, rep:write

    Pour afficher les autorisations, accédez au nœud pour lequel vous souhaitez afficher ou modifier les autorisations. Ensuite, dans le panneau inférieur droit de CRXDE, cliquez sur l'onglet Contrôle d'accès.

    CRXDE-ClientLib.

    Si l'utilisateur clientlibs-service est lui-même manquant, accédez à une instance AEM active et créez un package du chemin /home/users/system/clientlibs-service. Ensuite, installez ce package sur l’instance endommagée.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne