Details

    • Similar Issues:

      Description

      I just tried to switch over from Hudson, and I get this after I login. Maybe related to JENKINS-14031, but I don't know.

      Status Code: 500
      Exception: org.apache.commons.jelly.JellyTagException: jar:file:/appserv/devimat/hudson/war/WEB-INF/lib/jenkins-core-1.483.jar!/hudson/model/View/index.jelly:44:43: <st:include> Cannot invoke method isEmpty() on null object
      Stacktrace:

      javax.servlet.ServletException: org.apache.commons.jelly.JellyTagException: jar:file:/appserv/devimat/hudson/war/WEB-INF/lib/jenkins-core-1.483.jar!/hudson/model/View/index.jelly:44:43: <st:include> Cannot invoke method isEmpty() on null object
      at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:112)
      at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:625)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
      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 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(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)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)
      Caused by: org.apache.commons.jelly.JellyTagException: jar:file:/appserv/devimat/hudson/war/WEB-INF/lib/jenkins-core-1.483.jar!/hudson/model/View/index.jelly:44:43: <st:include> Cannot invoke method isEmpty() on null object
      at org.apache.commons.jelly.impl.TagScript.handleException(TagScript.java:716)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:282)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
      at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98)
      at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.kohsuke.stapler.jelly.ReallyStaticTagLibrary$1.run(ReallyStaticTagLibrary.java:99)
      at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95)
      at org.apache.commons.jelly.tags.core.CoreTagLibrary$2.run(CoreTagLibrary.java:105)
      at org.kohsuke.stapler.jelly.CallTagLibScript.run(CallTagLibScript.java:119)
      at org.kohsuke.stapler.jelly.CompressTag.doTag(CompressTag.java:44)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      at org.kohsuke.stapler.jelly.JellyViewScript.run(JellyViewScript.java:81)
      at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:63)
      at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:53)
      at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:107)
      ... 56 more
      Caused by: java.lang.NullPointerException: Cannot invoke method isEmpty() on null object
      at org.codehaus.groovy.runtime.NullObject.invokeMethod(NullObject.java:77)
      at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:45)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
      at org.codehaus.groovy.runtime.callsite.NullCallSite.call(NullCallSite.java:32)
      at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42)
      at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54)
      at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112)
      at hudson.model.View.main.run(main.groovy:6)
      at org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:66)
      at org.kohsuke.stapler.jelly.groovy.GroovierJellyScript.run(GroovierJellyScript.java:59)
      at org.kohsuke.stapler.jelly.IncludeTag.doTag(IncludeTag.java:146)
      at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270)
      ... 87 more

      Generated by Stapler at Tue Sep 25 16:13:29 CDT 2012

      Plugins used:

      plot 1.6-SNAPSHOT (private-03/08/2012 14:12-winstonp) true false
      external-monitor-job 1.1 true false
      ldap 1.1 true false
      pam-auth 1.0 true false
      ant 1.1 true false
      javadoc 1.0 true false
      scp 1.8 true false
      copy-to-slave 1.4 true false
      postbuild-task 1.8 true false
      collapsing-console-sections 1.3 true false
      hudson-pview-plugin 1.8 true false
      subversion 1.43 true true
      parameterized-trigger 2.15 true false
      git 2.2.0 true false
      cvs 2.6 true true
      locks-and-latches 0.6 true false
      heavy-job 1.0 true false
      setenv 1.1 true false
      role-strategy 1.1.2 true false
      active-directory 1.29 true false
      ssh 2.3 true false
      maven-plugin 1.483 true false
      copyartifact 1.23 true false
      filesystem_scm 1.20 true false
      join 1.15 true false
      downstream-buildview 1.8 true false
      dashboard-view 2.3 true false
      sectioned-view 1.16 true false
      rebuild 1.14 true false
      thinBackup 1.6.2 true false
      mercurial 1.41 true false
      translation 1.9 true true
      ssh-slaves 0.21 true false
      batch-task 1.16 true false
      text-finder 1.9 true false
      envfile 1.2 true false
      email-ext 2.24.1 true false
      slave-status 1.6 true false
      nested-view 1.9 true false
      disk-usage 0.18 true false
      timestamper 1.3.1 true false

      Jenkins ver. 1.483

        Attachments

          Issue Links

            Activity

            idapperdanman David Ishee created issue -
            idapperdanman David Ishee made changes -
            Field Original Value New Value
            Priority Major [ 3 ] Blocker [ 1 ]
            Hide
            idapperdanman David Ishee added a comment -

            If Jenkins isn't a drop-in replacement for Hudson anymore, that should be stated on the Upgrading From Hudson page (https://wiki.jenkins-ci.org/display/JENKINS/Upgrading+from+Hudson+to+Jenkins)

            Show
            idapperdanman David Ishee added a comment - If Jenkins isn't a drop-in replacement for Hudson anymore, that should be stated on the Upgrading From Hudson page ( https://wiki.jenkins-ci.org/display/JENKINS/Upgrading+from+Hudson+to+Jenkins )
            jglick Jesse Glick made changes -
            Summary Status Code: 500 error NPE (isEmpty) from main.groovy
            Hide
            jglick Jesse Glick added a comment -

            Some View.getItems call is returning null for some reason. Hard to say what that reason is without knowing what page you were viewing when you got this exception, what the default view was configured to be in Hudson, and what errors might have preceded this in your log file.

            Show
            jglick Jesse Glick added a comment - Some View.getItems call is returning null for some reason. Hard to say what that reason is without knowing what page you were viewing when you got this exception, what the default view was configured to be in Hudson, and what errors might have preceded this in your log file.
            Hide
            idapperdanman David Ishee added a comment -

            What can I do to help you debug this? I can provide more info if you direct me to what you need.

            Show
            idapperdanman David Ishee added a comment - What can I do to help you debug this? I can provide more info if you direct me to what you need.
            Hide
            jglick Jesse Glick added a comment -

            If you can run a Java debugger, set a breakpoint on impls of View.getItems. Otherwise, record the URL producing this exception, your log file, and the <views> section of $JENKINS_HOME/config.xml.

            Show
            jglick Jesse Glick added a comment - If you can run a Java debugger, set a breakpoint on impls of View.getItems . Otherwise, record the URL producing this exception, your log file, and the <views> section of $JENKINS_HOME/config.xml .
            Hide
            lmcazra Audrey Azra added a comment - - edited

            I've seen this happen when Anonymous was granted only the OVERALL: Read & JOB:discover permission
            Selecting both JOB: READ & DISCOVER permissions resolved the issue or removing the discover altogether also resolved it (but then users get the 404 error when accessing a job from a URL)
            (Project-based Matrix Authorization Strategy)

            Show
            lmcazra Audrey Azra added a comment - - edited I've seen this happen when Anonymous was granted only the OVERALL: Read & JOB:discover permission Selecting both JOB: READ & DISCOVER permissions resolved the issue or removing the discover altogether also resolved it (but then users get the 404 error when accessing a job from a URL) (Project-based Matrix Authorization Strategy)
            Hide
            idapperdanman David Ishee added a comment -

            In my Hudson configuration, Anonymous has no permissions.

            Show
            idapperdanman David Ishee added a comment - In my Hudson configuration, Anonymous has no permissions.
            Hide
            lmcazra Audrey Azra added a comment -

            What about authenticated? Do you have the JOB: DISCOVER permission set there? If so, try removing it....

            Show
            lmcazra Audrey Azra added a comment - What about authenticated? Do you have the JOB: DISCOVER permission set there? If so, try removing it....
            Hide
            idapperdanman David Ishee added a comment -

            I updated to Jenkins 1.480.1, and set the security realm to Active Directory, and Authorization = "Anyone can do anything". It didn't change the error message.

            I changed the Authorization to "logged in users can do anything", but the error message is still there.

            The Anonymous View works OK.

            Show
            idapperdanman David Ishee added a comment - I updated to Jenkins 1.480.1, and set the security realm to Active Directory, and Authorization = "Anyone can do anything". It didn't change the error message. I changed the Authorization to "logged in users can do anything", but the error message is still there. The Anonymous View works OK.
            Hide
            idapperdanman David Ishee added a comment -

            A lot of other problems are showing up. I think I'm going to give up on trying to upgrade a Hudson installation and start with a clean Jenkins install and re-do all my jobs. It looks like that is the only workable solution.

            Show
            idapperdanman David Ishee added a comment - A lot of other problems are showing up. I think I'm going to give up on trying to upgrade a Hudson installation and start with a clean Jenkins install and re-do all my jobs. It looks like that is the only workable solution.
            Hide
            idapperdanman David Ishee added a comment -

            I manually re-entered all my jobs. You can close this issue if you want to.

            Show
            idapperdanman David Ishee added a comment - I manually re-entered all my jobs. You can close this issue if you want to.
            jglick Jesse Glick made changes -
            Link This issue duplicates JENKINS-14031 [ JENKINS-14031 ]
            Hide
            jglick Jesse Glick added a comment -

            Probable duplicate of JENKINS-14031. Reporters running the Favorite plugin?

            Show
            jglick Jesse Glick added a comment - Probable duplicate of JENKINS-14031 . Reporters running the Favorite plugin?
            jglick Jesse Glick made changes -
            Link This issue is duplicated by JENKINS-17484 [ JENKINS-17484 ]
            Hide
            jglick Jesse Glick added a comment -

            Seems to be similar symptom to JENKINS-14031 but not necessarily same cause.

            Show
            jglick Jesse Glick added a comment - Seems to be similar symptom to JENKINS-14031 but not necessarily same cause.
            jglick Jesse Glick made changes -
            Link This issue is related to JENKINS-14031 [ JENKINS-14031 ]
            jglick Jesse Glick made changes -
            Link This issue duplicates JENKINS-14031 [ JENKINS-14031 ]
            Hide
            jglick Jesse Glick added a comment -

            Observed with a ListView in $JENKINS_HOME/config.xml that is missing a required field:

            <jobNames class="tree-set">
              <comparator class="hudson.util.CaseInsensitiveComparator"/>
            </jobNames>
            
            Show
            jglick Jesse Glick added a comment - Observed with a ListView in $JENKINS_HOME/config.xml that is missing a required field: <jobNames class= "tree-set" > <comparator class= "hudson.util.CaseInsensitiveComparator" /> </jobNames>
            jglick Jesse Glick made changes -
            Assignee Jesse Glick [ jglick ]
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            changelog.html
            core/src/main/java/hudson/model/ListView.java
            test/src/test/java/hudson/model/ListViewTest.java
            test/src/test/resources/hudson/model/ListViewTest/nullJobNames/config.xml
            http://jenkins-ci.org/commit/jenkins/fd31a5d85c0a1fd4a310ced04bb3b714469b2d43
            Log:
            [FIXED JENKINS-15309] Be robust against serialized ListView with jobNames==null.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: changelog.html core/src/main/java/hudson/model/ListView.java test/src/test/java/hudson/model/ListViewTest.java test/src/test/resources/hudson/model/ListViewTest/nullJobNames/config.xml http://jenkins-ci.org/commit/jenkins/fd31a5d85c0a1fd4a310ced04bb3b714469b2d43 Log: [FIXED JENKINS-15309] Be robust against serialized ListView with jobNames==null.
            scm_issue_link SCM/JIRA link daemon made changes -
            Status Open [ 1 ] Resolved [ 5 ]
            Resolution Fixed [ 1 ]
            Hide
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #2501
            [FIXED JENKINS-15309] Be robust against serialized ListView with jobNames==null. (Revision fd31a5d85c0a1fd4a310ced04bb3b714469b2d43)

            Result = SUCCESS
            Jesse Glick : fd31a5d85c0a1fd4a310ced04bb3b714469b2d43
            Files :

            • test/src/test/java/hudson/model/ListViewTest.java
            • test/src/test/resources/hudson/model/ListViewTest/nullJobNames/config.xml
            • changelog.html
            • core/src/main/java/hudson/model/ListView.java
            Show
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #2501 [FIXED JENKINS-15309] Be robust against serialized ListView with jobNames==null. (Revision fd31a5d85c0a1fd4a310ced04bb3b714469b2d43) Result = SUCCESS Jesse Glick : fd31a5d85c0a1fd4a310ced04bb3b714469b2d43 Files : test/src/test/java/hudson/model/ListViewTest.java test/src/test/resources/hudson/model/ListViewTest/nullJobNames/config.xml changelog.html core/src/main/java/hudson/model/ListView.java
            jglick Jesse Glick made changes -
            Labels lts-candidate
            Hide
            jglick Jesse Glick added a comment -

            Unverified mechanism by which this bug could have appeared:

            1. From 1.462, deleted <view> section of main config.
            2. Restarted.
            3. Created several views.
            4. Upgraded to 1.509.2.
            5. Downgraded to 1.462.
            6. Upgraded again to 1.509.2.

            Show
            jglick Jesse Glick added a comment - Unverified mechanism by which this bug could have appeared: 1. From 1.462, deleted <view> section of main config. 2. Restarted. 3. Created several views. 4. Upgraded to 1.509.2. 5. Downgraded to 1.462. 6. Upgraded again to 1.509.2.
            olivergondza Oliver Gondža made changes -
            Labels lts-candidate lts-1.509.3-fixed
            olivergondza Oliver Gondža made changes -
            Labels lts-1.509.3-fixed 1.509.3-fixed
            evernat evernat made changes -
            Link This issue is duplicated by JENKINS-16547 [ JENKINS-16547 ]
            rtyler R. Tyler Croy made changes -
            Workflow JNJira [ 146032 ] JNJira + In-Review [ 191751 ]

              People

              • Assignee:
                jglick Jesse Glick
                Reporter:
                idapperdanman David Ishee
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: