• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • scriptler-plugin
    • OSX 10.7.3
      java version "1.6.0_31"
      Java(TM) SE Runtime Environment (build 1.6.0_31-b04-415-11M3635)
      Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01-415, mixed mode)
      Jenkins 1.460

      If I try adding a script with scriptler to a job I get the following exception:

      Failed to parse form data. Please report this problem as a bug
      JSON={"":"","builder":{"backupJobName":"","builderId":"","defineParams":false,"kind":"org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder","parameters":[

      {"name":"","value":""}

      ,

      {"name":"","value":""}

      ],"scriptlerScriptId":"testOutput.groovy","stapler-class":"org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder"},"core:apply":"","description":"","displayNameOrNull":"","name":"test","properties":{"hudson-model-ParametersDefinitionProperty":{},"org-jenkinsci-plugins-envinject-EnvInjectJobProperty":{},"stapler-class-bag":"true"},"scm":{"value":"0"}}

      net.sf.json.JSONException: JSONObject["defineParams"] is not a JSONObject.
      at net.sf.json.JSONObject.getJSONObject(JSONObject.java:1759)
      at org.jenkinsci.plugins.scriptler.util.UIHelper.extractParameters(UIHelper.java:22)
      at org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder$DescriptorImpl.newInstance(ScriptlerBuilder.java:161)
      at org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder$DescriptorImpl.newInstance(ScriptlerBuilder.java:109)
      at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:912)
      at hudson.model.Descriptor.newInstancesFromHeteroList(Descriptor.java:899)
      at hudson.util.DescribableList.rebuildHetero(DescribableList.java:184)
      at hudson.model.Project.submit(Project.java:197)
      at hudson.model.Job.doConfigSubmit(Job.java:990)
      at hudson.model.AbstractProject.doConfigSubmit(AbstractProject.java:665)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:288)
      at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:151)
      at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:90)
      at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:111)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
      at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
      at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:241)
      at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
      at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:574)
      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.plugins.greenballs.GreenBallFilter.doFilter(GreenBallFilter.java:74)
      at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:98)
      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.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 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:680)

      The problem seems to be '"defineParams":false', which should be '"defineParams":"false"' (The boolean value is not placed inside quotes).

          [JENKINS-13518] Wrong JSON syntax

          I'm not able to reproduce this issue

          the issue is not about the boolean, the problem is that [ {"":"","builder": ] should not be there at all, but thats nothing the plugin has anything to do with...

          • which version of the plugin do you use?
          • is this through the WebGUI or do you use any other API? XML, JSON, CLI?
          • does this always happen?
          • what else can you tell me about the configuration? do you have any wrapping step around the scriptler step? (e.g. conditional-build-step)?

          Dominik Bartholdi added a comment - I'm not able to reproduce this issue the issue is not about the boolean, the problem is that [ {"":"","builder": ] should not be there at all, but thats nothing the plugin has anything to do with... which version of the plugin do you use? is this through the WebGUI or do you use any other API? XML, JSON, CLI? does this always happen? what else can you tell me about the configuration? do you have any wrapping step around the scriptler step? (e.g. conditional-build-step)?

          Florian Schwab added a comment - - edited
          • Scriptler Version: 2.2
          • WebGUI is used for configuring the job
          • It always happens

          I tried starting from scratch (deleted existing Jenkins config ~/.jenkins) and installed only the scriptler plugin. After creating a freestyle (also tried with Maven template) job with a scriptler build step (this build step is the only thing I changed) I get a slightly different error:

          JSON={"":"","builder":{"backupJobName":"","builderId":"","defineParams":false,"kind":"org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder","parameters":[

          {"name":"","value":""}

          ,

          {"name":"","value":""}

          ],"scriptlerScriptId":"testOutput.groovy","stapler-class":"org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder"},"core:apply":"","description":"","displayNameOrNull":"","name":"testJob","properties":{"hudson-model-ParametersDefinitionProperty":{},"stapler-class-bag":"true"},"scm":{"value":"1"}}

          As you can see the "builder" key is still present, but there is no other plugin or configuration that could interfere.

          Florian Schwab added a comment - - edited Scriptler Version: 2.2 WebGUI is used for configuring the job It always happens I tried starting from scratch (deleted existing Jenkins config ~/.jenkins) and installed only the scriptler plugin. After creating a freestyle (also tried with Maven template) job with a scriptler build step (this build step is the only thing I changed) I get a slightly different error: JSON={"":"","builder":{"backupJobName":"","builderId":"","defineParams":false,"kind":"org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder","parameters":[ {"name":"","value":""} , {"name":"","value":""} ],"scriptlerScriptId":"testOutput.groovy","stapler-class":"org.jenkinsci.plugins.scriptler.builder.ScriptlerBuilder"},"core:apply":"","description":"","displayNameOrNull":"","name":"testJob","properties":{"hudson-model-ParametersDefinitionProperty":{},"stapler-class-bag":"true"},"scm":{"value":"1"}} As you can see the "builder" key is still present, but there is no other plugin or configuration that could interfere.

          Code changed in jenkins
          User: imod
          Path:
          pom.xml
          src/main/java/org/jenkinsci/plugins/scriptler/util/UIHelper.java
          src/main/resources/org/jenkinsci/plugins/scriptler/builder/ScriptlerBuilder/config.jelly
          src/test/java/org/jenkinsci/plugins/scriptler/share/scriptlerweb/UIHelperTest.java
          src/test/resources/JENKINS-13518.json
          src/test/resources/simple1.json
          src/test/resources/simple2.json
          http://jenkins-ci.org/commit/scriptler-plugin/f754210dfca51bb0e5fb93ab59537748cd38501b
          Log:
          [FIXED JENKINS-13518] Wrong JSON syntax

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: imod Path: pom.xml src/main/java/org/jenkinsci/plugins/scriptler/util/UIHelper.java src/main/resources/org/jenkinsci/plugins/scriptler/builder/ScriptlerBuilder/config.jelly src/test/java/org/jenkinsci/plugins/scriptler/share/scriptlerweb/UIHelperTest.java src/test/resources/ JENKINS-13518 .json src/test/resources/simple1.json src/test/resources/simple2.json http://jenkins-ci.org/commit/scriptler-plugin/f754210dfca51bb0e5fb93ab59537748cd38501b Log: [FIXED JENKINS-13518] Wrong JSON syntax

          dogfood added a comment -

          Integrated in plugins_scriptler #50
          [FIXED JENKINS-13518] Wrong JSON syntax (Revision f754210dfca51bb0e5fb93ab59537748cd38501b)

          Result = SUCCESS
          imod :
          Files :

          • src/test/resources/JENKINS-13518.json
          • src/test/java/org/jenkinsci/plugins/scriptler/share/scriptlerweb/UIHelperTest.java
          • src/test/resources/simple2.json
          • src/main/java/org/jenkinsci/plugins/scriptler/util/UIHelper.java
          • src/test/resources/simple1.json
          • src/main/resources/org/jenkinsci/plugins/scriptler/builder/ScriptlerBuilder/config.jelly
          • pom.xml

          dogfood added a comment - Integrated in plugins_scriptler #50 [FIXED JENKINS-13518] Wrong JSON syntax (Revision f754210dfca51bb0e5fb93ab59537748cd38501b) Result = SUCCESS imod : Files : src/test/resources/ JENKINS-13518 .json src/test/java/org/jenkinsci/plugins/scriptler/share/scriptlerweb/UIHelperTest.java src/test/resources/simple2.json src/main/java/org/jenkinsci/plugins/scriptler/util/UIHelper.java src/test/resources/simple1.json src/main/resources/org/jenkinsci/plugins/scriptler/builder/ScriptlerBuilder/config.jelly pom.xml

            domi Dominik Bartholdi
            fschwab Florian Schwab
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: