-
Bug
-
Resolution: Won't Do
-
Neutral
-
5.2.2
-
None
The customer is using LDAP, its LDAP usermanager is located before the admin usermanager. Thus a call to UserManager.getUser('eric') will fetch the user eric from LDAP...
Changing the order of the usermanager solves the issue, but this workaround cannot be used by the customer.
Here is the stacktrace thrown during the migration :
2014-02-12 15:40:05,282 ERROR info.magnolia.module.InstallContextImpl : > Error while installing or updating workflow module. Task 'Update group for user eric' failed. (ProvisionException: Guice provision errors:
1) Module instance for module [ldap] not available, most likely because the module has not yet been started. Inject a Provider<> instead to get access to the module instance when it's available.
at info.magnolia.objectfactory.guice.GuiceComponentConfigurationModule.bindProvider(GuiceComponentConfigurationModule.java:161)
while locating info.magnolia.jaas.sp.ldap.LDAPModule
1 error)
com.google.inject.ProvisionException: Guice provision errors:
1) Module instance for module [ldap] not available, most likely because the module has not yet been started. Inject a Provider<> instead to get access to the module instance when it's available.
at info.magnolia.objectfactory.guice.GuiceComponentConfigurationModule.bindProvider(GuiceComponentConfigurationModule.java:161)
while locating info.magnolia.jaas.sp.ldap.LDAPModule
1 error
at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:987)
at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
at info.magnolia.objectfactory.guice.GuiceComponentProvider.getComponent(GuiceComponentProvider.java:102)
at info.magnolia.objectfactory.Components.getComponent(Components.java:96)
at info.magnolia.jaas.sp.ldap.LDAPUtils.isAllowPartialResults(LDAPUtils.java:86)
at info.magnolia.jaas.sp.ldap.LDAPUserManager.getUser(LDAPUserManager.java:75)
at info.magnolia.cms.security.DelegatingUserManager$5.delegate(DelegatingUserManager.java:112)
at info.magnolia.cms.security.DelegatingUserManager$5.delegate(DelegatingUserManager.java:109)
at info.magnolia.cms.security.DelegatingUserManager.delegateUntilSupportedAndNotNull(DelegatingUserManager.java:190)
at info.magnolia.cms.security.DelegatingUserManager.getUser(DelegatingUserManager.java:109)
at info.magnolia.module.delta.AddUserToGroupTask.execute(AddUserToGroupTask.java:57)
at info.magnolia.module.delta.ConditionalDelegateTask.execute(ConditionalDelegateTask.java:61)
at info.magnolia.module.ModuleManagerImpl.applyDeltas(ModuleManagerImpl.java:509)
at info.magnolia.module.ModuleManagerImpl.installOrUpdateModule(ModuleManagerImpl.java:491)
at info.magnolia.module.ModuleManagerImpl$1.doExec(ModuleManagerImpl.java:274)
at info.magnolia.context.MgnlContext$VoidOp.exec(MgnlContext.java:414)
at info.magnolia.context.MgnlContext$VoidOp.exec(MgnlContext.java:411)
at info.magnolia.context.MgnlContext.doInSystemContext(MgnlContext.java:385)
at info.magnolia.module.ModuleManagerImpl.performInstallOrUpdate(ModuleManagerImpl.java:268)
at info.magnolia.module.ui.ModuleManagerNullUI.onStartup(ModuleManagerNullUI.java:66)
at info.magnolia.cms.beans.config.ConfigLoader.load(ConfigLoader.java:149)
at info.magnolia.init.MagnoliaServletContextListener$1.doExec(MagnoliaServletContextListener.java:248)
at info.magnolia.context.MgnlContext$VoidOp.exec(MgnlContext.java:414)
at info.magnolia.context.MgnlContext$VoidOp.exec(MgnlContext.java:411)
at info.magnolia.context.MgnlContext.doInSystemContext(MgnlContext.java:385)
at info.magnolia.init.MagnoliaServletContextListener.startServer(MagnoliaServletContextListener.java:245)
at info.magnolia.init.MagnoliaServletContextListener.contextInitialized(MagnoliaServletContextListener.java:171)
at info.magnolia.init.MagnoliaServletContextListener.contextInitialized(MagnoliaServletContextListener.java:125)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4701)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5204)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5199)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
2014-02-12 15:40:05,283 ERROR info.magnolia.cms.beans.config.ConfigLoader : An unspecified error occurred during initialization: Guice provision errors: