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

dropdown views taskbar: error when saving jenkins config page

      I have the dropdown views tabbar enabled, and am usign Jenkins 1.455 When I go to save the main Jenkins config page, I see this CNF exception in the browser:

      exception

      javax.servlet.ServletException: java.lang.IllegalArgumentException: Failed to instantiate class hudson.views.ViewsTabBar from

      {"showJobCount":false,"stapler-class":["hudson.views.DefaultViewsTabBar","hudson.views.tabbar.DropDownViewsTabBar"]}

      org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:605)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:648)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:477)
      org.kohsuke.stapler.Stapler.service(Stapler.java:159)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:185)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:159)
      net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
      org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      oracle.boulderlabs.jenkins.validatorkiller.ValidatorKiller.doFilter(ValidatorKiller.java:63)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:61)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)

      root cause

      java.lang.IllegalArgumentException: Failed to instantiate class hudson.views.ViewsTabBar from

      {"showJobCount":false,"stapler-class":["hudson.views.DefaultViewsTabBar","hudson.views.tabbar.DropDownViewsTabBar"]}

      org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:633)
      org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:377)
      org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:373)
      hudson.views.ViewsTabBar$GlobalConfigurationImpl.configure(ViewsTabBar.java:84)
      jenkins.model.Jenkins.configureDescriptor(Jenkins.java:2620)
      jenkins.model.Jenkins.doConfigSubmit(Jenkins.java:2583)
      sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:597)
      org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
      org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
      org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
      org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
      org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:648)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:477)
      org.kohsuke.stapler.Stapler.service(Stapler.java:159)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:185)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:159)
      net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
      org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      oracle.boulderlabs.jenkins.validatorkiller.ValidatorKiller.doFilter(ValidatorKiller.java:63)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:61)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)

      root cause

      java.lang.IllegalArgumentException: Class ["hudson.views.DefaultViewsTabBar","hudson.views.tabbar.DropDownViewsTabBar"] is specified in JSON, but no such class found in classLoader hudson.PluginManager$UberClassLoader
      org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:606)
      org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:377)
      org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:373)
      hudson.views.ViewsTabBar$GlobalConfigurationImpl.configure(ViewsTabBar.java:84)
      jenkins.model.Jenkins.configureDescriptor(Jenkins.java:2620)
      jenkins.model.Jenkins.doConfigSubmit(Jenkins.java:2583)
      sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:597)
      org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
      org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
      org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
      org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
      org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:648)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:477)
      org.kohsuke.stapler.Stapler.service(Stapler.java:159)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:185)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:159)
      net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
      org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      oracle.boulderlabs.jenkins.validatorkiller.ValidatorKiller.doFilter(ValidatorKiller.java:63)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:61)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)

      root cause

      java.lang.ClassNotFoundException: ["hudson.views.DefaultViewsTabBar","hudson.views.tabbar.DropDownViewsTabBar"]
      hudson.PluginManager$UberClassLoader.findClass(PluginManager.java:747)
      java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      java.lang.ClassLoader.loadClass(ClassLoader.java:247)
      org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:601)
      org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:377)
      org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:373)
      hudson.views.ViewsTabBar$GlobalConfigurationImpl.configure(ViewsTabBar.java:84)
      jenkins.model.Jenkins.configureDescriptor(Jenkins.java:2620)
      jenkins.model.Jenkins.doConfigSubmit(Jenkins.java:2583)
      sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      java.lang.reflect.Method.invoke(Method.java:597)
      org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
      org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
      org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
      org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
      org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:648)
      org.kohsuke.stapler.Stapler.invoke(Stapler.java:477)
      org.kohsuke.stapler.Stapler.service(Stapler.java:159)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:185)
      net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:159)
      net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:86)
      org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:84)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.plugins.audit_trail.AuditTrailFilter.doFilter(AuditTrailFilter.java:66)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      oracle.boulderlabs.jenkins.validatorkiller.ValidatorKiller.doFilter(ValidatorKiller.java:63)
      hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
      hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
      hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:61)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
      hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
      hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
      hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
      hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
      hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)

          [JENKINS-13114] dropdown views taskbar: error when saving jenkins config page

          Steve Roth created issue -

          Steve Roth added a comment -

          With DD views taskbar installed (but not selected), I am able to save the system config page.
          With other navigation views selected, I am able to save the system config page.
          Once I select the DD views taskbar and save the config page, any further attempts to save the config page fail with an error like the above.

          The main symptom is a ClassNotFoundException listing a set of classes such as java.lang.ClassNotFoundException: ["hudson.views.DefaultViewsTabBar","hudson.views.tabbar.DropDownViewsTabBar"]

          Steve Roth added a comment - With DD views taskbar installed (but not selected), I am able to save the system config page. With other navigation views selected, I am able to save the system config page. Once I select the DD views taskbar and save the config page, any further attempts to save the config page fail with an error like the above. The main symptom is a ClassNotFoundException listing a set of classes such as java.lang.ClassNotFoundException: ["hudson.views.DefaultViewsTabBar","hudson.views.tabbar.DropDownViewsTabBar"]

          Steve Roth added a comment -

          This issue does not occur in Jenkins ver. 1.453 so it seems to be related to a newer Jenkins version. (1.454 or 1.455)

          Steve Roth added a comment - This issue does not occur in Jenkins ver. 1.453 so it seems to be related to a newer Jenkins version. (1.454 or 1.455)
          jieryn made changes -
          Link New: This issue is duplicated by JENKINS-13198 [ JENKINS-13198 ]

          Steve Roth added a comment -

          I've ruled out 1.454, so it's very likely this issue first appeared in v1.455.

          Steve Roth added a comment - I've ruled out 1.454, so it's very likely this issue first appeared in v1.455.

          Jim Searle added a comment -

          Same problem with Jenkins 1.458. It works in IE 7.0, FF 3.6. Fails in FF 11.0 and Chrome 18.0.

          Jim Searle added a comment - Same problem with Jenkins 1.458. It works in IE 7.0, FF 3.6. Fails in FF 11.0 and Chrome 18.0.

          ritzmann added a comment -

          FYI - after disabling the views tab bar and restarting the server, "Manage Jenkins" warns about unreadable data. This is the message:

          It is acceptable to leave unreadable data in these files, as Jenkins will safely ignore it. To avoid the log messages at Jenkins startup you can permanently delete the unreadable data by resaving these files using the button below.

          Type Name Error
          hudson.model.Hudson CannotResolveClassException: hudson.views.tabbar.DropDownViewsTabBar : hudson.views.tabbar.DropDownViewsTabBar

          ritzmann added a comment - FYI - after disabling the views tab bar and restarting the server, "Manage Jenkins" warns about unreadable data. This is the message: It is acceptable to leave unreadable data in these files, as Jenkins will safely ignore it. To avoid the log messages at Jenkins startup you can permanently delete the unreadable data by resaving these files using the button below. Type Name Error hudson.model.Hudson CannotResolveClassException: hudson.views.tabbar.DropDownViewsTabBar : hudson.views.tabbar.DropDownViewsTabBar

          jieryn added a comment -

          @ritzmann this is expected

          jieryn added a comment - @ritzmann this is expected

          Steve Roth added a comment -

          This is preventing our sites (which have many views) from upgrading to a Jenkins version newer than 1.454. I presume others with many views may be in the same situation.

          Steve Roth added a comment - This is preventing our sites (which have many views) from upgrading to a Jenkins version newer than 1.454. I presume others with many views may be in the same situation.

          Jim Searle added a comment -

          Yes, we had the same issue, but discovered that it works in Internet Explorer...

          Jim Searle added a comment - Yes, we had the same issue, but discovered that it works in Internet Explorer...

            jieryn jieryn
            sroth Steve Roth
            Votes:
            16 Vote for this issue
            Watchers:
            21 Start watching this issue

              Created:
              Updated:
              Resolved: