Bruno Antunes created JENKINS-13465: ---------------------------------------
Summary: Unable perform release: ClassCastException: net.sf.json.JSONNull cannot be cast to net.sf.json.JSONObject on Hudson 2.2.0 Key: JENKINS-13465 URL: https://issues.jenkins-ci.org/browse/JENKINS-13465 Project: Jenkins Issue Type: Bug Components: m2release Affects Versions: current Reporter: Bruno Antunes Assignee: teilo Having m2release plugin installed on Hudson 2.2.0, it generates the following error when we try to perform a release (testing with dryRun) Apr 16, 2012 2:31:16 PM org.apache.catalina.core.StandardWrapperValve invoke SEVERE: Servlet.service() for servlet Stapler threw exception java.lang.ClassCastException: net.sf.json.JSONNull cannot be cast to net.sf.json.JSONObject at org.jvnet.hudson.plugins.m2release.M2ReleaseAction.doSubmit(M2ReleaseAction.java:239) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ... Examining the source code, for M2ReleaseAction, it happens because there are not values in the form data for the parameter named "parameter" M2ReleaseAction Code: public void doSubmit(StaplerRequest req, StaplerResponse resp) ... { ... JSONArray a = JSONArray.fromObject(formData.get("parameter")); for (Object o : a) { JSONObject jo = (JSONObject) o; ... In order to solve this, check that we have "parameter"; or check for a possible JSONNull object: Possible Fix: JSONArray a = JSONArray.fromObject(formData.get("parameter")); for (Object o : a) { if (o instanceof JSONObject) { JSONObject jo = (JSONObject) o; ... } ... Note: The plugin is installed on Hudson with the workaround described in #JENKINS-12991 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jenkins-ci.org/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira