Uploaded image for project: 'Magnolia'
  1. Magnolia
  2. MAGNOLIA-5781

NPE when using BootstrapConditionally simplest constructor

    XMLWordPrintable

Details

    Description

      When using a the BootstrapConditionally Task (in Magnolia 5.2.3) with this constructor

          public BootstrapConditionally(String taskName, String resourceToBootstrap) 
      

      one gets a NPE when the task ist excuted (see below).
      This constructor also has no javadoc and delegates to

          public BootstrapConditionally(String taskName, String taskDescription, String repositoryName, String pathToCheck, String resourceToBootstrap, Task ifNodeExists) 
      

      but I think because the javadoc of the class says "A Task which bootstraps if the node targeted by the bootstrap file does not exist." it should better delegate to

      public BootstrapConditionally(String taskName, String taskDescription, String resourceToBootstrap)
      

      Workaround is to use this constructor directly.

       ERROR info.magnolia.module.InstallContextImpl  - > Error while installing or updating XXXX module. Task 'YYYYY' failed. (NullPointerException: )
      java.lang.NullPointerException
              at info.magnolia.importexport.BootstrapUtil.getFilenameFromResource(BootstrapUtil.java:182)
              at info.magnolia.importexport.BootstrapUtil.bootstrap(BootstrapUtil.java:75)
              at info.magnolia.module.delta.BootstrapResourcesTask.execute(BootstrapResourcesTask.java:72)
              at info.magnolia.module.delta.ConditionalDelegateTask.execute(ConditionalDelegateTask.java:61)
              at info.magnolia.module.delta.ConditionalDelegateTask.execute(ConditionalDelegateTask.java:61)
              at info.magnolia.module.ModuleManagerImpl.applyDeltas(ModuleManagerImpl.java:509)
              at info.magnolia.module.ModuleManagerImpl$3.doExec(ModuleManagerImpl.java:389)
              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.executeStartupTasks(ModuleManagerImpl.java:382)
              at info.magnolia.module.ModuleManagerImpl.startModules(ModuleManagerImpl.java:297)
              at info.magnolia.module.ui.ModuleManagerNullUI.onStartup(ModuleManagerNullUI.java:74)
              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:4973)
              at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467)
              at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
              at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
              at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
              at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)
              at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1229)
              at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1875)
              at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
              at java.util.concurrent.FutureTask.run(FutureTask.java:262)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:745)
      2014-05-21 13:20:25,369 [localhost-startStop-1] ERROR info.magnolia.cms.beans.config.ConfigLoader  - An unspecified error occurred during initialization: null
      java.lang.NullPointerException
              at info.magnolia.importexport.BootstrapUtil.getFilenameFromResource(BootstrapUtil.java:182)
              at info.magnolia.importexport.BootstrapUtil.bootstrap(BootstrapUtil.java:75)
              at info.magnolia.module.delta.BootstrapResourcesTask.execute(BootstrapResourcesTask.java:72)
              at info.magnolia.module.delta.ConditionalDelegateTask.execute(ConditionalDelegateTask.java:61)
              at info.magnolia.module.delta.ConditionalDelegateTask.execute(ConditionalDelegateTask.java:61)
              at info.magnolia.module.ModuleManagerImpl.applyDeltas(ModuleManagerImpl.java:509)
      
      

      Checklists

        Acceptance criteria

        Attachments

          Issue Links

            Activity

              People

                dlipp Daniel Lipp
                moritz Moritz Siuts
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  Checklists

                    Bug DoR
                    Task DoD