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

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

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved (View Workflow)
    • Blocker
    • Resolution: Fixed
    • core
    • Jenkins ver. 1.637, Jenkins ver. 1.638, Jenkins ver. 1.639
      Plugin ver. 0.53

    Description

      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
      
      

      Attachments

        Issue Links

          Activity

            I have the same problem.

            tomas_skalicky Tomas Skalicky added a comment - I have the same problem.
            martouf Steve Haworth added a comment - - edited

            It has stopped me deploying this plugin also, I also tried an earlier version of the plugin 0.44, the result was the same.
            So it might be a change in core jenkins code which has an impact with this plugin?
            I haven't been able to roll back jenkins to check this out though.

            martouf Steve Haworth added a comment - - edited It has stopped me deploying this plugin also, I also tried an earlier version of the plugin 0.44, the result was the same. So it might be a change in core jenkins code which has an impact with this plugin? I haven't been able to roll back jenkins to check this out though.

            We keep jenkins always up-to-date, but since we didn't edit/create jobs so often I can't tell exactly which version broke the plugin. I can roughly assume it's something released in the last 4 weeks.

            giuseppeiannello Giuseppe Iannello added a comment - We keep jenkins always up-to-date, but since we didn't edit/create jobs so often I can't tell exactly which version broke the plugin. I can roughly assume it's something released in the last 4 weeks.
            netropic Max Burdge added a comment -

            Same problem after upgrading to Jenkins 1.638. Using Extended Choice Parameters 0.52.

            netropic Max Burdge added a comment - Same problem after upgrading to Jenkins 1.638. Using Extended Choice Parameters 0.52.
            rsena Roberto Sena added a comment - - edited

            I am having the same issue. I was using version 1.634 and was still able to save jobs that had Extended Choice Parameters in the job. After the upgrade to 1.638 I am not able to save any jobs.
            I am in the middle of migrating from an old build tool to Jenkins and this is causing an all halt on that migration.

            rsena Roberto Sena added a comment - - edited I am having the same issue. I was using version 1.634 and was still able to save jobs that had Extended Choice Parameters in the job. After the upgrade to 1.638 I am not able to save any jobs. I am in the middle of migrating from an old build tool to Jenkins and this is causing an all halt on that migration.

            Also affected after the uprade to 1.638. The only workaround seems to be to edit the job's configuration file manually.

            Can we get some feedback on when this is expected to be fixed, and/or if it's actually being worked on?

            asidorenko_nexonia Aleksandr Sidorenko added a comment - Also affected after the uprade to 1.638. The only workaround seems to be to edit the job's configuration file manually. Can we get some feedback on when this is expected to be fixed, and/or if it's actually being worked on?

            Reverting to 1.636 avoids the issue, but this is far from satisfactory since 1.638 was released to correct major security flaws.

            This is not advisable if you run a publicly accessible server. Let's hope this bug is fixed soon, or that a good workaround is found.

            asidorenko_nexonia Aleksandr Sidorenko added a comment - Reverting to 1.636 avoids the issue, but this is far from satisfactory since 1.638 was released to correct major security flaws. This is not advisable if you run a publicly accessible server. Let's hope this bug is fixed soon, or that a good workaround is found.
            drtaddei Dave Taddei added a comment -

            Also observed on Jenkins 1.638 as of 16/11/2015

            drtaddei Dave Taddei added a comment - Also observed on Jenkins 1.638 as of 16/11/2015

            I just started using this plugin but unfortunately this bug prevents me from doing anything with it. I'm using the most current version of Jenkins (1.638).

            christianbecker Christian Becker added a comment - I just started using this plugin but unfortunately this bug prevents me from doing anything with it. I'm using the most current version of Jenkins (1.638).
            drtaddei Dave Taddei added a comment -

            The only work around at the moment is to edit the job config.xml directly which obviously is not ideal.

            drtaddei Dave Taddei added a comment - The only work around at the moment is to edit the job config.xml directly which obviously is not ideal.
            rskorskigsn Rich Skorski added a comment -

            Not knowing much about creating Jenkins plugins, I think the logs suggest that the ExtendedChoiceParameterDefinition ctor needs a //@DataBoundConstructor tag. That comment would go on this line in the source:
            https://github.com/jenkinsci/extended-choice-parameter-plugin/blob/master/src/main/java/com/cwctravel/hudson/plugins/extended_choice_parameter/ExtendedChoiceParameterDefinition.java#L400

            I tried fixing and testing this locally following the Jenkins Plugin tutorial
            https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial

            I didn't get to far, though. My test Jenkins server saw my local build of the plugin and had it installed, but I don't get "Extended Choice Parameter" as an option when I go to add parameters to a job, with or without my suggested change.

            If anyone has an idea what may be wrong with my test setup or already knows how to set up a test env correctly and can test this change, please speak up!

            rskorskigsn Rich Skorski added a comment - Not knowing much about creating Jenkins plugins, I think the logs suggest that the ExtendedChoiceParameterDefinition ctor needs a //@DataBoundConstructor tag. That comment would go on this line in the source: https://github.com/jenkinsci/extended-choice-parameter-plugin/blob/master/src/main/java/com/cwctravel/hudson/plugins/extended_choice_parameter/ExtendedChoiceParameterDefinition.java#L400 I tried fixing and testing this locally following the Jenkins Plugin tutorial https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial I didn't get to far, though. My test Jenkins server saw my local build of the plugin and had it installed, but I don't get "Extended Choice Parameter" as an option when I go to add parameters to a job, with or without my suggested change. If anyone has an idea what may be wrong with my test setup or already knows how to set up a test env correctly and can test this change, please speak up!
            pedersen Björn Pedersen added a comment - Duplicated by https://issues.jenkins-ci.org/browse/JENKINS-31733
            pedersen Björn Pedersen added a comment - Likely caused by https://github.com/jenkinsci/jenkins/pull/1888
            nmanos Noam Manos added a comment - - edited

            Another workaround is to use Dynamic Extended Choice Parameter plugin instead.

            If Dynamic Extended Choice Parameter plugin doesn't work for your needs, redeploy previous Jenkins WAR, for me 1.636 works:
            https://updates.jenkins-ci.org/download/war/1.636/jenkins.war
            (Replace the jenkins.war with it, and restart)

            nmanos Noam Manos added a comment - - edited Another workaround is to use Dynamic Extended Choice Parameter plugin instead. If Dynamic Extended Choice Parameter plugin doesn't work for your needs, redeploy previous Jenkins WAR, for me 1.636 works: https://updates.jenkins-ci.org/download/war/1.636/jenkins.war (Replace the jenkins.war with it, and restart)

            Going back to 1.636 is not an option, as 1.638 fixes some critical security bugs!

            pedersen Björn Pedersen added a comment - Going back to 1.636 is not an option, as 1.638 fixes some critical security bugs!
            jglick Jesse Glick added a comment -

            This commit does not suffice. The newInstance override needs to be deleted and plain old form binding used in config.jelly rather than the complex customized code currently there. See ui-samples-plugin for conventional usage.

            The broader issue is that Descriptor.newInstance overrides are not supported by Stapler itself; this method is called only from certain places in Jenkins, but not generally for nested objects. The old ParametersDefinitionProperty.DescriptorImpl.newInstance happened to call Descriptor.newInstancesFromHeteroList, which does call Descriptor.newInstance on direct children, in this case ParameterDescriptor instances.

            jglick Jesse Glick added a comment - This commit does not suffice. The newInstance override needs to be deleted and plain old form binding used in config.jelly rather than the complex customized code currently there. See ui-samples-plugin for conventional usage. The broader issue is that Descriptor.newInstance overrides are not supported by Stapler itself; this method is called only from certain places in Jenkins, but not generally for nested objects. The old ParametersDefinitionProperty.DescriptorImpl.newInstance happened to call Descriptor.newInstancesFromHeteroList , which does call Descriptor.newInstance on direct children , in this case ParameterDescriptor instances.

            Code changed in jenkins
            User: Jesse Glick
            Path:
            cps/src/main/java/org/jenkinsci/plugins/workflow/cps/Snippetizer.java
            multibranch/src/main/java/org/jenkinsci/plugins/workflow/multibranch/JobPropertyStep.java
            step-api/src/test/java/org/jenkinsci/plugins/workflow/steps/StepConfigTester.java
            http://jenkins-ci.org/commit/workflow-plugin/393aa3abca8e6fa974e4ae02ce30e96ab8f4c7c6
            Log:
            JENKINS-31458 Noting places where https://github.com/jenkinsci/jenkins/pull/1936 might allow for simplifications.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: cps/src/main/java/org/jenkinsci/plugins/workflow/cps/Snippetizer.java multibranch/src/main/java/org/jenkinsci/plugins/workflow/multibranch/JobPropertyStep.java step-api/src/test/java/org/jenkinsci/plugins/workflow/steps/StepConfigTester.java http://jenkins-ci.org/commit/workflow-plugin/393aa3abca8e6fa974e4ae02ce30e96ab8f4c7c6 Log: JENKINS-31458 Noting places where https://github.com/jenkinsci/jenkins/pull/1936 might allow for simplifications.

            Code changed in jenkins
            User: Jesse Glick
            Path:
            test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java
            test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly
            http://jenkins-ci.org/commit/jenkins/c6f66be8df7974186e014681912bdfdec01bb123
            Log:
            JENKINS-31458 Reproduced problem in test (passes in 53c86ec but fails in 600b1f0).

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly http://jenkins-ci.org/commit/jenkins/c6f66be8df7974186e014681912bdfdec01bb123 Log: JENKINS-31458 Reproduced problem in test (passes in 53c86ec but fails in 600b1f0).

            Code changed in jenkins
            User: Jesse Glick
            Path:
            core/src/main/java/hudson/model/Descriptor.java
            core/src/main/java/hudson/model/Node.java
            test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java
            http://jenkins-ci.org/commit/jenkins/dca86078c36fbc8aeeefec22d8483c9e8bbcd986
            Log:
            [FIXED JENKINS-31458] Ensuring that Descriptor.newInstance is called even on nested objects.

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: core/src/main/java/hudson/model/Descriptor.java core/src/main/java/hudson/model/Node.java test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java http://jenkins-ci.org/commit/jenkins/dca86078c36fbc8aeeefec22d8483c9e8bbcd986 Log: [FIXED JENKINS-31458] Ensuring that Descriptor.newInstance is called even on nested objects.

            Code changed in jenkins
            User: Jesse Glick
            Path:
            changelog.html
            core/src/main/java/hudson/model/Descriptor.java
            core/src/main/java/hudson/model/Node.java
            test/src/test/java/hudson/model/JobPropertyTest.java
            test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java
            test/src/test/java/hudson/slaves/NodePropertyTest.java
            test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly
            http://jenkins-ci.org/commit/jenkins/b8d4d2b49217e9b84c9eccc9eeae447c1f6459c1
            Log:
            JENKINS-31458 Noting merge of #1936.

            Compare: https://github.com/jenkinsci/jenkins/compare/7c9ba7011cb9...b8d4d2b49217

            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/Descriptor.java core/src/main/java/hudson/model/Node.java test/src/test/java/hudson/model/JobPropertyTest.java test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java test/src/test/java/hudson/slaves/NodePropertyTest.java test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly http://jenkins-ci.org/commit/jenkins/b8d4d2b49217e9b84c9eccc9eeae447c1f6459c1 Log: JENKINS-31458 Noting merge of #1936. Compare: https://github.com/jenkinsci/jenkins/compare/7c9ba7011cb9...b8d4d2b49217
            jglick Jesse Glick added a comment -

            Fix should be in 1.640.

            jglick Jesse Glick added a comment - Fix should be in 1.640.
            dogfood dogfood added a comment -

            Integrated in jenkins_main_trunk #4384
            JENKINS-31458 Reproduced problem in test (passes in 53c86ec but fails (Revision c6f66be8df7974186e014681912bdfdec01bb123)
            [FIXED JENKINS-31458] Ensuring that Descriptor.newInstance is called (Revision dca86078c36fbc8aeeefec22d8483c9e8bbcd986)

            Result = SUCCESS
            Jesse Glick : c6f66be8df7974186e014681912bdfdec01bb123
            Files :

            • test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly
            • test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java

            Jesse Glick : dca86078c36fbc8aeeefec22d8483c9e8bbcd986
            Files :

            • core/src/main/java/hudson/model/Descriptor.java
            • core/src/main/java/hudson/model/Node.java
            • test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java
            dogfood dogfood added a comment - Integrated in jenkins_main_trunk #4384 JENKINS-31458 Reproduced problem in test (passes in 53c86ec but fails (Revision c6f66be8df7974186e014681912bdfdec01bb123) [FIXED JENKINS-31458] Ensuring that Descriptor.newInstance is called (Revision dca86078c36fbc8aeeefec22d8483c9e8bbcd986) Result = SUCCESS Jesse Glick : c6f66be8df7974186e014681912bdfdec01bb123 Files : test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java Jesse Glick : dca86078c36fbc8aeeefec22d8483c9e8bbcd986 Files : core/src/main/java/hudson/model/Descriptor.java core/src/main/java/hudson/model/Node.java test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java
            giuseppeiannello Giuseppe Iannello added a comment - - edited

            Confirmed solved in 1.640 + Extended Choice Parameter v0.55
            Thanks!

            giuseppeiannello Giuseppe Iannello added a comment - - edited Confirmed solved in 1.640 + Extended Choice Parameter v0.55 Thanks!
            pidikun Paul D added a comment -

            Are you sure this has been fixed in 1.640?
            The problem still persists for me having 1.640 installed will all the latest plugin updates.

            Open a job configuration containing a ExtendedChoiceParameter field and click 'Save'.

            pidikun Paul D added a comment - Are you sure this has been fixed in 1.640? The problem still persists for me having 1.640 installed will all the latest plugin updates. Open a job configuration containing a ExtendedChoiceParameter field and click 'Save'.

            Jenkins ver. 1.640
            Extended Choice Parameter Plug-In 0.55 and 0.52

            Problem still reproduced.

            slick Vyacheslav Terdunov added a comment - Jenkins ver. 1.640 Extended Choice Parameter Plug-In 0.55 and 0.52 Problem still reproduced.
            rsena Roberto Sena added a comment -

            I have updated to Jenkins ver. 1.640 and Extended Choice Parameter Plug-In ver 0.55 and I am able to save jobs successfully.
            I did see the error if I didnt have one the Radio button choices selected or have a value in the value field. I havent tried multiple combinations. Maybe it is only during specific use cases.

            rsena Roberto Sena added a comment - I have updated to Jenkins ver. 1.640 and Extended Choice Parameter Plug-In ver 0.55 and I am able to save jobs successfully. I did see the error if I didnt have one the Radio button choices selected or have a value in the value field. I havent tried multiple combinations. Maybe it is only during specific use cases.
            danielbeck Daniel Beck added a comment -

            jglick Comments indicate this isn't resolved after all.

            danielbeck Daniel Beck added a comment - jglick Comments indicate this isn't resolved after all.
            jglick Jesse Glick added a comment -

            Anyone still seeing this in 1.640, can you come up with steps to reproduce from scratch?

            jglick Jesse Glick added a comment - Anyone still seeing this in 1.640, can you come up with steps to reproduce from scratch?
            dogfood dogfood added a comment -

            Integrated in jenkins_2.0 #5
            JENKINS-31458 Reproduced problem in test (passes in 53c86ec but fails (Revision c6f66be8df7974186e014681912bdfdec01bb123)
            [FIXED JENKINS-31458] Ensuring that Descriptor.newInstance is called (Revision dca86078c36fbc8aeeefec22d8483c9e8bbcd986)

            Result = SUCCESS
            jesse glick : c6f66be8df7974186e014681912bdfdec01bb123
            Files :

            • test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly
            • test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java

            jesse glick : dca86078c36fbc8aeeefec22d8483c9e8bbcd986
            Files :

            • core/src/main/java/hudson/model/Node.java
            • test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java
            • core/src/main/java/hudson/model/Descriptor.java
            dogfood dogfood added a comment - Integrated in jenkins_2.0 #5 JENKINS-31458 Reproduced problem in test (passes in 53c86ec but fails (Revision c6f66be8df7974186e014681912bdfdec01bb123) [FIXED JENKINS-31458] Ensuring that Descriptor.newInstance is called (Revision dca86078c36fbc8aeeefec22d8483c9e8bbcd986) Result = SUCCESS jesse glick : c6f66be8df7974186e014681912bdfdec01bb123 Files : test/src/test/resources/hudson/model/ParametersDefinitionPropertyTest/KrazyParameterDefinition/config.jelly test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java jesse glick : dca86078c36fbc8aeeefec22d8483c9e8bbcd986 Files : core/src/main/java/hudson/model/Node.java test/src/test/java/hudson/model/ParametersDefinitionPropertyTest.java core/src/main/java/hudson/model/Descriptor.java
            smith9 David Smith added a comment -

            I had this issue and it works for me after upgrading to 1.648

            smith9 David Smith added a comment - I had this issue and it works for me after upgrading to 1.648

            Code changed in jenkins
            User: Jesse Glick
            Path:
            cps/src/main/java/org/jenkinsci/plugins/workflow/cps/Snippetizer.java
            http://jenkins-ci.org/commit/workflow-cps-plugin/627d6f127a7d4632441aa3c613368403cf528372
            Log:
            JENKINS-31458 Noting places where https://github.com/jenkinsci/jenkins/pull/1936 might allow for simplifications.

            Originally-Committed-As: 393aa3abca8e6fa974e4ae02ce30e96ab8f4c7c6

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: cps/src/main/java/org/jenkinsci/plugins/workflow/cps/Snippetizer.java http://jenkins-ci.org/commit/workflow-cps-plugin/627d6f127a7d4632441aa3c613368403cf528372 Log: JENKINS-31458 Noting places where https://github.com/jenkinsci/jenkins/pull/1936 might allow for simplifications. Originally-Committed-As: 393aa3abca8e6fa974e4ae02ce30e96ab8f4c7c6

            Code changed in jenkins
            User: Jesse Glick
            Path:
            multibranch/src/main/java/org/jenkinsci/plugins/workflow/multibranch/JobPropertyStep.java
            http://jenkins-ci.org/commit/workflow-multibranch-plugin/f3a40cf79f89626a2c4cfabbbb126dfad903e687
            Log:
            JENKINS-31458 Noting places where https://github.com/jenkinsci/jenkins/pull/1936 might allow for simplifications.

            Originally-Committed-As: 393aa3abca8e6fa974e4ae02ce30e96ab8f4c7c6

            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: multibranch/src/main/java/org/jenkinsci/plugins/workflow/multibranch/JobPropertyStep.java http://jenkins-ci.org/commit/workflow-multibranch-plugin/f3a40cf79f89626a2c4cfabbbb126dfad903e687 Log: JENKINS-31458 Noting places where https://github.com/jenkinsci/jenkins/pull/1936 might allow for simplifications. Originally-Committed-As: 393aa3abca8e6fa974e4ae02ce30e96ab8f4c7c6

            People

              jglick Jesse Glick
              giuseppeiannello Giuseppe Iannello
              Votes:
              36 Vote for this issue
              Watchers:
              39 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: