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