Search code examples
javaaem

AuthenticationSupport service missing after installing S3 connector


I installed S3 Connector for AEM (COM.ADOBE.GRANITE.OAK.S3CONNECTOR) through the package share, and now my AEM instance is bricked.

Whenever I go to localhost:4502, I get a page saying:

HTTP ERROR: 503

Problem accessing /. Reason:

    AuthenticationSupport service missing. Cannot authenticate request.

In the error logs, I see this stack trace:

06.04.2017 14:03:24.889 *ERROR* [FelixFrameworkWiring] org.apache.jackrabbit.oak-core [org.apache.jackrabbit.oak.plugins.blob.datastore.SharedS3DataStore(4368)] The activate method has thrown an exception (javax.jcr.RepositoryException: java.lang.NullPointerException: null value in entry: component.id=null)
javax.jcr.RepositoryException: java.lang.NullPointerException: null value in entry: component.id=null
    at org.apache.jackrabbit.core.data.CachingDataStore.init(CachingDataStore.java:383)
    at org.apache.jackrabbit.oak.plugins.blob.datastore.AbstractDataStoreService.activate(AbstractDataStoreService.java:84)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:222)
    at org.apache.felix.scr.impl.helper.BaseMethod.access$500(BaseMethod.java:37)
    at org.apache.felix.scr.impl.helper.BaseMethod$Resolved.invoke(BaseMethod.java:615)
    at org.apache.felix.scr.impl.helper.BaseMethod.invoke(BaseMethod.java:499)
    at org.apache.felix.scr.impl.helper.ActivateMethod.invoke(ActivateMethod.java:295)
    at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:302)
    at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:113)
    at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:866)
    at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:833)
    at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:724)
    at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:399)
    at org.apache.felix.scr.impl.config.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:676)
    at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:339)
    at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:360)
    at org.apache.felix.scr.impl.Activator.access$000(Activator.java:53)
    at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:260)
    at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:259)
    at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:232)
    at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482)
    at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415)
    at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232)
    at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444)
    at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:916)
    at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:835)
    at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:517)
    at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541)
    at org.apache.felix.framework.Felix.startBundle(Felix.java:2172)
    at org.apache.felix.framework.Felix$RefreshHelper.restart(Felix.java:5063)
    at org.apache.felix.framework.Felix.refreshPackages(Felix.java:4253)
    at org.apache.felix.framework.FrameworkWiringImpl.run(FrameworkWiringImpl.java:188)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException: null value in entry: component.id=null
    at com.google.common.collect.CollectPreconditions.checkEntryNotNull(CollectPreconditions.java:33)
    at com.google.common.collect.ImmutableMap.entryOf(ImmutableMap.java:135)
    at com.google.common.collect.ImmutableMap$Builder.put(ImmutableMap.java:206)
    at com.google.common.collect.Maps.fromProperties(Maps.java:1187)
    at org.apache.jackrabbit.oak.blob.cloud.aws.s3.S3Backend.init(S3Backend.java:212)
    at org.apache.jackrabbit.oak.blob.cloud.aws.s3.S3Backend.init(S3Backend.java:132)
    at org.apache.jackrabbit.core.data.CachingDataStore.init(CachingDataStore.java:285)
    ... 36 common frames omitted
06.04.2017 14:03:24.890 *ERROR* [FelixFrameworkWiring] org.apache.jackrabbit.oak-core [org.apache.jackrabbit.oak.plugins.blob.datastore.SharedS3DataStore(4368)] Failed creating the component instance; see log for reason

How can I fix/prevent this error?

EDIT: I tried installing this package again on another instance I had, and after a short time, this error happened automatically. The first time I had reset my instance. This time, I just let it sit after installing it, since I had heard to do so from somewhere.


Solution

  • This is because of the misconfigured S3 connector as per your other post.

    Basically, AEM is trying to connect to S3 datastore from the OOTB config which might have been downloaded from the AEM S3 connector in Adobe's repository. These entries are blank by default and therefore cause repository startup to fail which is why you get a missing repository exception as above. You can fix this by following the instructions from the SO post below (my other answer).

    PS: Apologies for late response as I think we are in different time zones otherwise I would have pointed to this issue in advance!