Uploaded image for project: 'Runtime'
  1. Runtime
  2. RUNTIME-2392

After restarting application, LDAPGroupDirectory instances do not appear anymore

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • 4.0RC4
    • 4.0RC3
    • None
    • None

      An error occured during the initialization of the GroupDirectory etudiants-ufr
      java.lang.NullPointerException
      	at org.ametys.plugins.core.impl.group.directory.ldap.LdapGroupDirectory.init(LdapGroupDirectory.java:184)
      	at org.ametys.core.group.directory.GroupDirectoryFactory.createGroupDirectory(GroupDirectoryFactory.java:134)
      	at org.ametys.core.group.GroupDirectoryDAO._configureGroupDirectory(GroupDirectoryDAO.java:464)
      	at org.ametys.core.group.GroupDirectoryDAO._read(GroupDirectoryDAO.java:414)
      	at org.ametys.core.group.GroupDirectoryDAO.getGroupDirectories(GroupDirectoryDAO.java:146)
      	at org.ametys.core.group.GroupDirectoriesDataSourceConsumer.isInUse(GroupDirectoriesDataSourceConsumer.java:70)
      	at org.ametys.core.datasource.DataSourceConsumerExtensionPoint.isInUse(DataSourceConsumerExtensionPoint.java:45)
      	at org.ametys.core.datasource.AbstractDataSourceManager.initialize(AbstractDataSourceManager.java:108)
      	at org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:245)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager$ComponentFactory.configureAndStart(ThreadSafeComponentManager.java:367)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager$ProxyComponentFactory.newInstance(PluginsComponentManager.java:156)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager$ProxyComponentFactory.newInstance(PluginsComponentManager.java:121)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager.lookup(ThreadSafeComponentManager.java:138)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager.lookup(PluginsComponentManager.java:74)
      	at org.apache.avalon.framework.service.WrapperServiceManager.lookup(WrapperServiceManager.java:69)
      	at org.ametys.core.util.ldap.AbstractLDAPConnector.service(AbstractLDAPConnector.java:115)
      	at org.apache.cocoon.components.LifecycleHelper.setupComponent(LifecycleHelper.java:364)
      	at org.apache.cocoon.components.LifecycleHelper.setupComponent(LifecycleHelper.java:305)
      	at org.apache.cocoon.components.LifecycleHelper.setupComponent(LifecycleHelper.java:259)
      	at org.ametys.core.user.directory.UserDirectoryFactory.createUserDirectory(UserDirectoryFactory.java:127)
      	at org.ametys.core.user.population.UserPopulationDAO._configureUserDirectories(UserPopulationDAO.java:1013)
      	at org.ametys.core.user.population.UserPopulationDAO._configurePopulation(UserPopulationDAO.java:987)
      	at org.ametys.core.user.population.UserPopulationDAO._readPopulations(UserPopulationDAO.java:939)
      	at org.ametys.core.user.population.UserPopulationDAO.getUserPopulations(UserPopulationDAO.java:260)
      	at org.ametys.plugins.core.impl.user.population.PopulationDataSourceConsumer._isInUseByUserDirectories(PopulationDataSourceConsumer.java:92)
      	at org.ametys.plugins.core.impl.user.population.PopulationDataSourceConsumer.isInUse(PopulationDataSourceConsumer.java:71)
      	at org.ametys.core.datasource.DataSourceConsumerExtensionPoint.isInUse(DataSourceConsumerExtensionPoint.java:45)
      	at org.ametys.core.datasource.AbstractDataSourceManager.initialize(AbstractDataSourceManager.java:108)
      	at org.ametys.core.datasource.SQLDataSourceManager.initialize(SQLDataSourceManager.java:146)
      	at org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:245)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager$ComponentFactory.configureAndStart(ThreadSafeComponentManager.java:367)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager$ProxyComponentFactory.newInstance(PluginsComponentManager.java:156)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager$ProxyComponentFactory.newInstance(PluginsComponentManager.java:121)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager.lookup(ThreadSafeComponentManager.java:138)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager.lookup(PluginsComponentManager.java:74)
      	at org.apache.avalon.framework.service.WrapperServiceManager.lookup(WrapperServiceManager.java:69)
      	at org.ametys.runtime.plugins.admin.datasource.InvalidDataSourceNotificator.service(InvalidDataSourceNotificator.java:48)
      	at org.apache.avalon.framework.container.ContainerUtil.service(ContainerUtil.java:144)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager$ComponentFactory.configureAndStart(ThreadSafeComponentManager.java:357)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager$ComponentFactory.newInstance(ThreadSafeComponentManager.java:378)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager.initialize(ThreadSafeComponentManager.java:206)
      	at org.ametys.runtime.plugin.component.AbstractThreadSafeComponentExtensionPoint.initializeExtensions(AbstractThreadSafeComponentExtensionPoint.java:96)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager$ExtensionPointFactory.newInstance(PluginsComponentManager.java:219)
      	at org.ametys.runtime.plugin.component.PluginsComponentManager$ExtensionPointFactory.newInstance(PluginsComponentManager.java:186)
      	at org.ametys.runtime.plugin.component.ThreadSafeComponentManager.initialize(ThreadSafeComponentManager.java:206)
      	at org.ametys.runtime.plugin.PluginsManager.init(PluginsManager.java:420)
      	at org.ametys.runtime.cocoon.TreeProcessor.compose(TreeProcessor.java:49)
      	at org.apache.avalon.framework.container.ContainerUtil.compose(ContainerUtil.java:174)
      	at org.apache.avalon.excalibur.component.DefaultComponentFactory.newInstance(DefaultComponentFactory.java:266)
      	at org.apache.avalon.excalibur.component.ThreadSafeComponentHandler.initialize(ThreadSafeComponentHandler.java:108)
      	at org.apache.avalon.excalibur.component.ExcaliburComponentManager.initialize(ExcaliburComponentManager.java:524)
      	at org.apache.cocoon.components.CocoonComponentManager.initialize(CocoonComponentManager.java:583)
      	at org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:245)
      	at org.apache.cocoon.Cocoon.initialize(Cocoon.java:345)
      	at org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:245)
      	at org.ametys.runtime.servlet.RuntimeServlet._createCocoon(RuntimeServlet.java:350)
      	at org.ametys.runtime.servlet.RuntimeServlet._initAmetys(RuntimeServlet.java:284)
      	at org.ametys.runtime.servlet.RuntimeServlet.restartCocoon(RuntimeServlet.java:620)
      	at org.ametys.runtime.servlet.RuntimeServlet.service(RuntimeServlet.java:583)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
      	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
      	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:522)
      	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1095)
      	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:672)
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1504)
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1460)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      	at java.lang.Thread.run(Thread.java:745)
      

      Cicular dependencies =>
      UserPopulationDAO -> LDAPUserDirectory -> LDAPDataSourceManager -> DataSourceConsumerEP -> GroupDirectoriesDataSourceConsumer -> GroupDirectoryDAO - LDAPGroupDirectory -> UserPopulationDAO

      What's more, in UserPopulationDAO, _lastUpdate could be a static field ?
      And in #_readPopulations, the line "_lastUpdate = new Date().getTime();" -could be at the end of the configuration ?

            sprieul Simon Prieul (Inactive)
            sprieul Simon Prieul (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: