• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Critical Critical
    • fstrigger-plugin
    • None
    • Jenkins 1.522 on RHEL5 x86_64

      Upon saving configuration in Matrix project I get an oops! page with the following stack trace:

      Stack trace
      javax.servlet.ServletException: java.lang.NullPointerException
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:726)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:586)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:217)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:50)
      	at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:103)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:272)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:175)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:65)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
      	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:47)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
      	at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
      	at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227)
      	at winstone.RequestHandlerThread.run(RequestHandlerThread.java:152)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:442)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      	at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: java.lang.NullPointerException
      	at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getLogFile(FileNameTrigger.java:65)
      	at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getProjectActions(FileNameTrigger.java:287)
      	at hudson.matrix.MatrixProject.createTransientActions(MatrixProject.java:433)
      	at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:724)
      	at hudson.matrix.MatrixProject.updateTransientActions(MatrixProject.java:440)
      	at hudson.model.AbstractProject.save(AbstractProject.java:279)
      	at hudson.util.PersistedList.onModified(PersistedList.java:173)
      	at hudson.util.PersistedList.replaceBy(PersistedList.java:85)
      	at hudson.model.AbstractProject.submit(AbstractProject.java:1983)
      	at hudson.matrix.MatrixProject.submit(MatrixProject.java:828)
      	at hudson.model.Job.doConfigSubmit(Job.java:1059)
      	at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:765)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297)
      	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:160)
      	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:95)
      	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:586)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:217)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
      	at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
      	at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
      	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
      	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:64)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:47)
      	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
      	at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227)
      	at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
      	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
      	at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      	... 2 more
      

          [JENKINS-18658] NPE in FSTrigger upon configuration save

          Zoltan Szeverenyi added a comment - - edited

          Also occurs when running Jenkins 1.523 on RHEL release 6.2 (Santiago) 2.6.32-220.el6.x86_64

          Zoltan Szeverenyi added a comment - - edited Also occurs when running Jenkins 1.523 on RHEL release 6.2 (Santiago) 2.6.32-220.el6.x86_64

          David MacBride added a comment - - edited

          I hit the same issue

          Steps:

          • create new job
          • select trigger: [FSTrigger] - Monitor files
          • specify file path
          • click Save

          Results: Oops page with below stack trace:
          javax.servlet.ServletException: java.lang.NullPointerException
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:726)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
          at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777)
          at org.kohsuke.stapler.Stapler.invoke(Stapler.java:586)
          at org.kohsuke.stapler.Stapler.service(Stapler.java:217)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
          at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
          at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
          at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
          at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:64)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
          at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
          at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
          at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
          at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:47)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
          at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
          at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
          at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
          at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227)
          at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
          at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
          at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
          at java.util.concurrent.FutureTask.run(Unknown Source)
          at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          at java.lang.Thread.run(Unknown Source)
          Caused by: java.lang.NullPointerException
          at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getLogFile(FileNameTrigger.java:65)
          at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getProjectActions(FileNameTrigger.java:287)
          at hudson.model.Project.createTransientActions(Project.java:222)
          at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:724)
          at hudson.model.AbstractProject.save(AbstractProject.java:279)
          at hudson.model.AbstractItem.setDisplayName(AbstractItem.java:156)
          at hudson.model.Job.doConfigSubmit(Job.java:1069)
          at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:765)
          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.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297)
          at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:160)
          at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:95)
          at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
          at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
          at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684)
          ... 56 more

          Note: the job's config.xml does get updated with the trigger stanza. I see the entry like:
          <org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger plugin="fstrigger@0.36">
          <spec></spec>
          <fileInfo>
          <org.jenkinsci.plugins.fstrigger.triggers.FileNameTriggerInfo>
          <filePathPattern>D:/Repositories/EP_COMMERCE_70/db/current</filePathPattern>
          <strategy>LATEST</strategy>
          <inspectingContentFile>false</inspectingContentFile>
          <doNotCheckLastModificationDate>false</doNotCheckLastModificationDate>
          <contentFileTypes/>
          </org.jenkinsci.plugins.fstrigger.triggers.FileNameTriggerInfo>
          </fileInfo>
          </org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger>

          NOTE: now that the trigger is configured I get the same Oops message and stack trace every time I try to modify the job's config.

          The method where the NPE occurs:
          @Override
          protected File getLogFile()

          { return new File(job.getRootDir(), "trigger-polling-files.log"); }

          Environment: Jenkins ver. 1.523
          Plugins:
          <plugins>
          <shortName>mailer</shortName>
          <version>1.5</version>
          <shortName>external-monitor-job</shortName>
          <version>1.1</version>
          <shortName>ldap</shortName>
          <version>1.2</version>
          <shortName>pam-auth</shortName>
          <version>1.1</version>
          <shortName>ant</shortName>
          <version>1.2</version>
          <shortName>build-flow-plugin</shortName>
          <version>0.9</version>
          <shortName>javadoc</shortName>
          <version>1.1</version>
          <shortName>credentials</shortName>
          <version>1.5</version>
          <shortName>cvs</shortName>
          <version>2.8</version>
          <shortName>token-macro</shortName>
          <version>1.8.1</version>
          <shortName>maven-plugin</shortName>
          <version>1.523</version>
          <shortName>email-ext</shortName>
          <version>2.30.2</version>
          <shortName>fstrigger</shortName>
          <version>0.36</version>
          <shortName>jobConfigHistory</shortName>
          <version>2.4</version>
          <shortName>ssh-credentials</shortName>
          <version>0.4</version>
          <shortName>ssh-slaves</shortName>
          <version>0.27</version>
          <shortName>subversion</shortName>
          <version>1.50</version>
          <shortName>svn-tag</shortName>
          <version>1.16</version>
          <shortName>translation</shortName>
          <version>1.10</version>
          </plugins>

          David MacBride added a comment - - edited I hit the same issue Steps: create new job select trigger: [FSTrigger] - Monitor files specify file path click Save Results: Oops page with below stack trace: javax.servlet.ServletException: java.lang.NullPointerException at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:726) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777) at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:239) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:777) at org.kohsuke.stapler.Stapler.invoke(Stapler.java:586) at org.kohsuke.stapler.Stapler.service(Stapler.java:217) at javax.servlet.http.HttpServlet.service(HttpServlet.java:45) at winstone.ServletConfiguration.execute(ServletConfiguration.java:248) at winstone.RequestDispatcher.forward(RequestDispatcher.java:333) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376) at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96) at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84) at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:64) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249) at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67) at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87) at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76) at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:47) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81) at winstone.FilterConfiguration.execute(FilterConfiguration.java:194) at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366) at winstone.RequestDispatcher.forward(RequestDispatcher.java:331) at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:227) at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.NullPointerException at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getLogFile(FileNameTrigger.java:65) at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getProjectActions(FileNameTrigger.java:287) at hudson.model.Project.createTransientActions(Project.java:222) at hudson.model.AbstractProject.updateTransientActions(AbstractProject.java:724) at hudson.model.AbstractProject.save(AbstractProject.java:279) at hudson.model.AbstractItem.setDisplayName(AbstractItem.java:156) at hudson.model.Job.doConfigSubmit(Job.java:1069) at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:765) 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.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:297) at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:160) at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:95) at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111) at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53) at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:684) ... 56 more Note: the job's config.xml does get updated with the trigger stanza. I see the entry like: <org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger plugin="fstrigger@0.36"> <spec></spec> <fileInfo> <org.jenkinsci.plugins.fstrigger.triggers.FileNameTriggerInfo> <filePathPattern>D:/Repositories/EP_COMMERCE_70/db/current</filePathPattern> <strategy>LATEST</strategy> <inspectingContentFile>false</inspectingContentFile> <doNotCheckLastModificationDate>false</doNotCheckLastModificationDate> <contentFileTypes/> </org.jenkinsci.plugins.fstrigger.triggers.FileNameTriggerInfo> </fileInfo> </org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger> NOTE: now that the trigger is configured I get the same Oops message and stack trace every time I try to modify the job's config. The method where the NPE occurs: @Override protected File getLogFile() { return new File(job.getRootDir(), "trigger-polling-files.log"); } Environment: Jenkins ver. 1.523 Plugins: <plugins> <shortName>mailer</shortName> <version>1.5</version> <shortName>external-monitor-job</shortName> <version>1.1</version> <shortName>ldap</shortName> <version>1.2</version> <shortName>pam-auth</shortName> <version>1.1</version> <shortName>ant</shortName> <version>1.2</version> <shortName>build-flow-plugin</shortName> <version>0.9</version> <shortName>javadoc</shortName> <version>1.1</version> <shortName>credentials</shortName> <version>1.5</version> <shortName>cvs</shortName> <version>2.8</version> <shortName>token-macro</shortName> <version>1.8.1</version> <shortName>maven-plugin</shortName> <version>1.523</version> <shortName>email-ext</shortName> <version>2.30.2</version> <shortName>fstrigger</shortName> <version>0.36</version> <shortName>jobConfigHistory</shortName> <version>2.4</version> <shortName>ssh-credentials</shortName> <version>0.4</version> <shortName>ssh-slaves</shortName> <version>0.27</version> <shortName>subversion</shortName> <version>1.50</version> <shortName>svn-tag</shortName> <version>1.16</version> <shortName>translation</shortName> <version>1.10</version> </plugins>

          Same as JENKINS-18667?

          Jonathan Brecher added a comment - Same as JENKINS-18667 ?

          David MacBride added a comment - - edited

          The stack trace is different than in JENKINS-18667. In the issue reported in 18658 the stack trace says:
          Caused by: java.lang.NullPointerException
          at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getLogFile(FileNameTrigger.java:65)

          Perhaps it is an issue in a common parent class.

          David MacBride added a comment - - edited The stack trace is different than in JENKINS-18667 . In the issue reported in 18658 the stack trace says: Caused by: java.lang.NullPointerException at org.jenkinsci.plugins.fstrigger.triggers.FileNameTrigger.getLogFile(FileNameTrigger.java:65) Perhaps it is an issue in a common parent class.

          Jesse Docken added a comment -

          This appears to only affect configuration of the jobs that enable the FSTrigger options and does not impact the execution of jobs that already had FSTriggers enabled.

          Jesse Docken added a comment - This appears to only affect configuration of the jobs that enable the FSTrigger options and does not impact the execution of jobs that already had FSTriggers enabled.

          I agree that the issue doesn't impact the execution of jobs that are so configured. The are running fine. However, I do get the same Oops message and stack trace if/when I try to modify such a job's config; the config changes are not persisted to the job's config.xml so I need to edit it by hand.

          David MacBride added a comment - I agree that the issue doesn't impact the execution of jobs that are so configured. The are running fine. However, I do get the same Oops message and stack trace if/when I try to modify such a job's config; the config changes are not persisted to the job's config.xml so I need to edit it by hand.

          Code changed in jenkins
          User: Gregory Boissinot
          Path:
          src/main/java/org/jenkinsci/plugins/fstrigger/core/FSTriggerAction.java
          src/main/java/org/jenkinsci/plugins/fstrigger/core/FSTriggerFilesAction.java
          src/main/java/org/jenkinsci/plugins/fstrigger/core/FSTriggerFolderAction.java
          src/main/java/org/jenkinsci/plugins/fstrigger/service/FSTriggerFileNameRetriever.java
          src/main/java/org/jenkinsci/plugins/fstrigger/triggers/FileNameTrigger.java
          src/main/java/org/jenkinsci/plugins/fstrigger/triggers/FolderContentTrigger.java
          src/main/resources/org/jenkinsci/plugins/fstrigger/core/FSTriggerAction/index.jelly
          http://jenkins-ci.org/commit/fstrigger-plugin/a8a6844f2142021eb8fa5ab94efe00333bf7a731
          Log:
          Fix JENKINS-18658

          Compare: https://github.com/jenkinsci/fstrigger-plugin/compare/e4adb22fec37...a8a6844f2142

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Gregory Boissinot Path: src/main/java/org/jenkinsci/plugins/fstrigger/core/FSTriggerAction.java src/main/java/org/jenkinsci/plugins/fstrigger/core/FSTriggerFilesAction.java src/main/java/org/jenkinsci/plugins/fstrigger/core/FSTriggerFolderAction.java src/main/java/org/jenkinsci/plugins/fstrigger/service/FSTriggerFileNameRetriever.java src/main/java/org/jenkinsci/plugins/fstrigger/triggers/FileNameTrigger.java src/main/java/org/jenkinsci/plugins/fstrigger/triggers/FolderContentTrigger.java src/main/resources/org/jenkinsci/plugins/fstrigger/core/FSTriggerAction/index.jelly http://jenkins-ci.org/commit/fstrigger-plugin/a8a6844f2142021eb8fa5ab94efe00333bf7a731 Log: Fix JENKINS-18658 Compare: https://github.com/jenkinsci/fstrigger-plugin/compare/e4adb22fec37...a8a6844f2142

            gbois Gregory Boissinot
            raspy Krzysztof Malinowski
            Votes:
            7 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated:
              Resolved: