Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-15986

Cannot save job configuration pages on Jenkins 1.463 or newer when Build Failure Analyzer installed

    Details

    • Similar Issues:
      Show 5 results

      Description

      In a job configuration screen pushing Apply brings up an empty error window; pushing Save brings the below error 500 stack trace.

      I mentioned build 1.463 because this it is mentioned in the plugin wiki page, not because I validated that the problem doesn't exist on pre 1.463 versions.

      A possible workaround may be found in this comment: https://wiki.jenkins-ci.org/display/JENKINS/Build+Failure+Analyzer?focusedCommentId=65668033#comment-65668033

      Status Code: 500
      Exception: java.lang.NullPointerException
      Stacktrace:
      
      javax.servlet.ServletException: java.lang.NullPointerException
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:615)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:573)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:658)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:487)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:164)
      	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:95)
      	at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:206)
      	at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:179)
      	at net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
      	at org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      	at hudson.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:58)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      	at hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66)
      	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      	at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
      	at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      	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 org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
      	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:173)
      	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      	at jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:63)
      	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:66)
      	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:50)
      	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:215)
      	at winstone.RequestHandlerThread.run(RequestHandlerThread.java:138)
      	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 hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:922)
      	at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:909)
      	at hudson.util.DescribableList.rebuildHetero(DescribableList.java:203)
      	at hudson.model.Project.submit(Project.java:203)
      	at hudson.model.Job.doConfigSubmit(Job.java:1045)
      	at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:723)
      	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:288)
      	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
      	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
      	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:573)
      	... 65 more
      
      
      

        Attachments

          Activity

          Hide
          t_westling Tomas Westling added a comment -

          This looks different from the problem we have seen, which is described on the wiki page for the plugin.
          We have seen an error in loading configuration pages, not saving them.

          Show
          t_westling Tomas Westling added a comment - This looks different from the problem we have seen, which is described on the wiki page for the plugin. We have seen an error in loading configuration pages, not saving them.
          Hide
          orrc Christopher Orr added a comment -

          I've seen this too on our 1.490 installation, and I've seen it reported on the users' mailing list.

          I didn't notice any problems when loading config pages; only when saving.

          Show
          orrc Christopher Orr added a comment - I've seen this too on our 1.490 installation, and I've seen it reported on the users' mailing list. I didn't notice any problems when loading config pages; only when saving.
          Hide
          paul_muller Paul Muller added a comment -

          We are facing the exact same issue.
          After installing the plugin (which is great and really helpful by the way) we are no longer able to safe configurations.

          Status Code: 500
          Exception: java.lang.NullPointerException
          Stacktrace:

          javax.servlet.ServletException: java.lang.NullPointerException

          We would really love to keep the plugin as it fits our use case perfectly.

          Show
          paul_muller Paul Muller added a comment - We are facing the exact same issue. After installing the plugin (which is great and really helpful by the way) we are no longer able to safe configurations. Status Code: 500 Exception: java.lang.NullPointerException Stacktrace: javax.servlet.ServletException: java.lang.NullPointerException We would really love to keep the plugin as it fits our use case perfectly.
          Hide
          t_westling Tomas Westling added a comment -

          We are looking into this problem right now, we hope to have a fix ready soon.

          Show
          t_westling Tomas Westling added a comment - We are looking into this problem right now, we hope to have a fix ready soon.
          Hide
          paul_muller Paul Muller added a comment -

          That's great news!
          If it helps: Looks like some settings (the "clean build" flag for mercurial repositories for example) are stored even though we get the 500 error.
          Mail recipients however seems to be unchangeable at the moment.

          Show
          paul_muller Paul Muller added a comment - That's great news! If it helps: Looks like some settings (the "clean build" flag for mercurial repositories for example) are stored even though we get the 500 error. Mail recipients however seems to be unchangeable at the moment.
          Hide
          t_westling Tomas Westling added a comment -

          Fixed in Build Failure Analyzer 1.3.0

          Show
          t_westling Tomas Westling added a comment - Fixed in Build Failure Analyzer 1.3.0
          Hide
          orrc Christopher Orr added a comment -

          Works for me. Thanks!

          Show
          orrc Christopher Orr added a comment - Works for me. Thanks!

            People

            • Assignee:
              t_westling Tomas Westling
              Reporter:
              david_resnick David Resnick
            • Votes:
              4 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: