NoStaplerConstructorException: There's no @DataBoundConstructor on any constructor of class com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Blocker
    • Component/s: core
    • Environment:
      Jenkins ver. 1.637, Jenkins ver. 1.638, Jenkins ver. 1.639
      Plugin ver. 0.53

      When changing the configuration for a job that includes a parameter provided by the plugin, the following stack trace is shown after saving, and the job is not updated.
      This is preventing any job using an Extended Choice Parameter to be reconfigured.

      Error while serving https://[redacted]:8080/job/Deploy/job/Staging/configSubmit
      java.lang.reflect.InvocationTargetException
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:606)
      	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:121)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:249)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      	at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:249)
      	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
      	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
      	at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
      	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:132)
      	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:123)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:49)
      	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:93)
      	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:171)
      	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
      	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
      	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:1482)
      	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
      	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.content(AbstractHttpConnection.java:960)
      	at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
      	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
      	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
      	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:1145)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: java.lang.RuntimeException: Failed to instantiate class hudson.model.ParametersDefinitionProperty from {"specified":true,"parameterDefinitions":[{"name":"REVISION","defaultValue":"","description":"","stapler-class<span class="code-quote">":"hudson.model.StringParameterDefinition","$class<span class="code-quote">":"hudson.model.StringParameterDefinition"},{"name":"COUNTRIES","description":"","parameterGroup":{"value":"0","type":"PT_CHECKBOX","visibleItemCount":"20","multiSelectDelimiter":" ","quoteValue":false,"propertySource":{"value":"0","propertyValue":"ae,at,au,de,fr,it,nl,sg"},"defaultPropertySource":{"value":"0","defaultPropertyValue":"ae,at,au,de,fr,it,nl,sg"}},"stapler-class<span class="code-quote">":"com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition","$class<span class="code-quote">":"com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition"}]}
      	at hudson.model.Descriptor.newInstance(Descriptor.java:586)
      	at hudson.model.JobPropertyDescriptor.newInstance(JobPropertyDescriptor.java:72)
      	at jenkins.model.OptionalJobProperty$OptionalJobPropertyDescriptor.newInstance(OptionalJobProperty.java:56)
      	at hudson.model.JobProperty.reconfigure(JobProperty.java:184)
      	at hudson.model.JobProperty.reconfigure(JobProperty.java:78)
      	at hudson.util.DescribableList.rebuild(DescribableList.java:175)
      	at hudson.model.Job.doConfigSubmit(Job.java:1202)
      	at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:796)
      	... 77 more
      Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.model.ParametersDefinitionProperty from {"specified":true,"parameterDefinitions":[{"name":"REVISION","defaultValue":"","description":"","stapler-class<span class="code-quote">":"hudson.model.StringParameterDefinition","$class<span class="code-quote">":"hudson.model.StringParameterDefinition"},{"name":"COUNTRIES","description":"","parameterGroup":{"value":"0","type":"PT_CHECKBOX","visibleItemCount":"20","multiSelectDelimiter":" ","quoteValue":false,"propertySource":{"value":"0","propertyValue":"ae,at,au,de,fr,it,nl,sg"},"defaultPropertySource":{"value":"0","defaultPropertyValue":"ae,at,au,de,fr,it,nl,sg"}},"stapler-class<span class="code-quote">":"com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition","$class<span class="code-quote">":"com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition"}]}
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:602)
      	at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:404)
      	at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:400)
      	at hudson.model.Descriptor.newInstance(Descriptor.java:577)
      	... 84 more
      Caused by: java.lang.IllegalArgumentException: Failed to convert the parameterDefinitions parameter of the constructor public hudson.model.ParametersDefinitionProperty(java.util.List)
      	at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:699)
      	at org.kohsuke.stapler.RequestImpl.access$200(RequestImpl.java:81)
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:600)
      	... 87 more
      Caused by: java.lang.IllegalArgumentException: Failed to instantiate class hudson.model.ParameterDefinition from {"name":"COUNTRIES","description":"","parameterGroup":{"value":"0","type":"PT_CHECKBOX","visibleItemCount":"20","multiSelectDelimiter":" ","quoteValue":false,"propertySource":{"value":"0","propertyValue":"ae,at,au,de,fr,it,nl,sg"},"defaultPropertySource":{"value":"0","defaultPropertyValue":"ae,at,au,de,fr,it,nl,sg"}},"stapler-class<span class="code-quote">":"com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition","$class<span class="code-quote">":"com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition"}
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:602)
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:647)
      	at org.kohsuke.stapler.RequestImpl.bindJSON(RequestImpl.java:404)
      	at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:697)
      	... 89 more
      Caused by: org.kohsuke.stapler.NoStaplerConstructorException: There's no @DataBoundConstructor on any constructor of class com.cwctravel.hudson.plugins.extended_choice_parameter.ExtendedChoiceParameterDefinition
      	at org.kohsuke.stapler.ClassDescriptor.loadConstructorParamNames(ClassDescriptor.java:177)
      	at org.kohsuke.stapler.RequestImpl.instantiate(RequestImpl.java:684)
      	at org.kohsuke.stapler.RequestImpl.access$200(RequestImpl.java:81)
      	at org.kohsuke.stapler.RequestImpl$TypePair.convertJSON(RequestImpl.java:600)
      	... 92 more
      
      

            Assignee:
            Jesse Glick
            Reporter:
            Giuseppe Iannello
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Resolved:
              Archived: