• 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

          Krzysztof Malinowski created issue -

          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.
          Jesse Docken made changes -
          Priority Original: Major [ 3 ] New: Critical [ 2 ]

          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
          Gregory Boissinot made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]

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

              Created:
              Updated:
              Resolved: