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

javax.servlet.ServletException: java.lang.IllegalArgumentException when depth != 0 in job API

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Minor
    • Resolution: Fixed
    • Component/s: warnings-plugin
    • Labels:
    • Environment:
      Jenkins ver. 1.583, warnings plugin 4.42
    • Similar Issues:

      Description

      When accessing the build API with a depth other than 0, for example something like
      /job/job_name/1394/api/xml?depth=1 (which is linked from the api description page) a 500 error with backtrace is generated.

      This seems to be a regression in 1.583

      javax.servlet.ServletException: java.lang.IllegalArgumentException
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:783)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
      at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:210)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:733)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
      at org.kohsuke.stapler.MetaClass$12.dispatch(MetaClass.java:390)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:733)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
      at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:248)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:733)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:863)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:636)
      at org.kohsuke.stapler.Stapler.service(Stapler.java:225)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
      at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:96)
      at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:88)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      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:117)
      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 jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:86)
      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 org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:46)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
      at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
      at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
      at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
      at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
      at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
      at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
      at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
      at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
      at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
      at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
      at org.eclipse.jetty.server.Server.handle(Server.java:370)
      at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
      at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:949)
      at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1011)
      at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:644)
      at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
      at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
      at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
      at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1146)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:701)
      Caused by: java.lang.IllegalArgumentException
      at sun.reflect.GeneratedMethodAccessor796.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:622)
      at org.kohsuke.stapler.export.MethodProperty.getValue(MethodProperty.java:66)
      at org.kohsuke.stapler.export.Property.writeTo(Property.java:116)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:190)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Property.writeValue(Property.java:241)
      at org.kohsuke.stapler.export.Property.writeValue(Property.java:187)
      at org.kohsuke.stapler.export.Property.writeValue(Property.java:139)
      at org.kohsuke.stapler.export.Property.writeTo(Property.java:116)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:190)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:185)
      at org.kohsuke.stapler.export.Model.writeTo(Model.java:157)
      at org.kohsuke.stapler.ResponseImpl.serveExposedBean(ResponseImpl.java:267)
      at hudson.model.Api.doXml(Api.java:98)
      at sun.reflect.GeneratedMethodAccessor887.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:622)
      at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298)
      at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
      at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
      at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:120)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:733)
      ... 68 more

        Attachments

          Issue Links

            Activity

            Hide
            danielbeck Daniel Beck added a comment -

            Could be an issue with some actions configured in the job, or stored in builds. Would be helpful if you copied the job (on the file system, so all builds are copied too, at least the build.xml), and then, if the copy has the same problem, deleted things (configuration, builds) one by one from it until it works. Then check what was last deleted.

            As it is, the stacktrace is pretty useless and you didn't provide anything else to aid investigation (job config.xml, build.xml files, Jenkins configuration, ...).

            Show
            danielbeck Daniel Beck added a comment - Could be an issue with some actions configured in the job, or stored in builds. Would be helpful if you copied the job (on the file system, so all builds are copied too, at least the build.xml), and then, if the copy has the same problem, deleted things (configuration, builds) one by one from it until it works. Then check what was last deleted. As it is, the stacktrace is pretty useless and you didn't provide anything else to aid investigation (job config.xml, build.xml files, Jenkins configuration, ...).
            Hide
            thjc Toby Collett added a comment -

            I have managed to isolate this to jobs that are using the warnings plugin. When we configure our jobs with the warnings console parser we get this stack trace with depth > 1.

            Show
            thjc Toby Collett added a comment - I have managed to isolate this to jobs that are using the warnings plugin. When we configure our jobs with the warnings console parser we get this stack trace with depth > 1.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Ulli Hafner
            Path:
            src/main/java/hudson/plugins/analysis/core/AbstractResultAction.java
            http://jenkins-ci.org/commit/analysis-core-plugin/7d2f63c7c04889ac05c9c4849b67fad9fcc1c449
            Log:
            [FIXED JENKINS-25167][FIXED JENKINS-25054] Do not export tooltip since it requires parameter.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Ulli Hafner Path: src/main/java/hudson/plugins/analysis/core/AbstractResultAction.java http://jenkins-ci.org/commit/analysis-core-plugin/7d2f63c7c04889ac05c9c4849b67fad9fcc1c449 Log: [FIXED JENKINS-25167] [FIXED JENKINS-25054] Do not export tooltip since it requires parameter.

              People

              • Assignee:
                Unassigned
                Reporter:
                thjc Toby Collett
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: