This article explains how to fix client libraries that are broken due to AccessDeniedException.

Issue

Your AEM pages are not loading JavaScript or CSS and you see the following error in the log file:

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)

Environment

AEM 6.2 and later versions

Cause

The clientlibs-service user is missing or missing permissions.

Resolution

To get rid of the AccessDeniedException and fix the issue, follow these steps:

  1. Go to http://host:port/crx/de/index.jsp web app and log in as admin.

  2. Browse to the folders below and validate that clientlibs-service user has these permissions:

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

    To view permissions, browse to the node you want to view or modify permissions for. Then, on the lower-right panel of CRXDE click the Access Control tab.

    CRXDE-ClientLib

    If the clientlibs-service user itself is missing, then go to a working AEM instance and create a package of the path /home/users/system/clientlibs-service. Then install that to your broken instance.

Dit werk is gelicentieerd onder de Creative Commons Naamsvermelding/Niet-commercieel/Gelijk delen 3.0 Unported-licentie  De voorwaarden van Creative Commons zijn niet van toepassing op Twitter™- en Facebook-berichten.

Juridische kennisgevingen   |   Online privacybeleid