[
https://issues.apache.org/jira/browse/CLOUDSTACK-932?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rohit Yadav resolved CLOUDSTACK-932.
------------------------------------
Resolution: Fixed
Fixed on master, remove the new() as well, we don't need to allocate space.
Pl. see if this builds and apply any necessary fix, thanks.
commit 0b0752f047c112cfd2de7ba3347887f593890368
Author: Rohit Yadav <[email protected]>
Date: Wed Jan 9 04:47:53 2013 -0800
CLOUDSTACK-932: Fix incorrect param that caused casting error while
processing api
Reported-by: Kishan Kavala <[email protected]>
Signed-off-by: Rohit Yadav <[email protected]>
diff --git a/server/src/com/cloud/api/ApiDispatcher.java
b/server/src/com/cloud/api/ApiDispatcher.java
index 75e3617..7bc3271 100755
--- a/server/src/com/cloud/api/ApiDispatcher.java
+++ b/server/src/com/cloud/api/ApiDispatcher.java
@@ -430,10 +430,9 @@ public class ApiDispatcher {
switch (listType) {
case LONG:
case UUID:
- List<Long> listParam = new
ArrayList<Long>();
- listParam = (List) field.get(cmd);
+ List<Long> listParam =
(List<Long>) field.get(cmd);
for (Long entityId : listParam) {
- Object entityObj =
s_instance._entityMgr.findById(entity, (Long) field.get(cmd));
+ Object entityObj =
s_instance._entityMgr.findById(entity, entityId);
entitiesToAccess.add(entityObj);
}
break;
> ClassCastException when processing API parameters
> -------------------------------------------------
>
> Key: CLOUDSTACK-932
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-932
> Project: CloudStack
> Issue Type: Bug
> Security Level: Public(Anyone can view this level - this is the
> default.)
> Components: API
> Affects Versions: 4.1.0
> Reporter: Kishan Kavala
> Assignee: Rohit Yadav
>
> Exception occurs when when list type param is used in API. e.g. networkIds in
> deployVirtualMachine
> 2013-01-09 16:13:35,899 DEBUG [cloud.api.ApiServlet]
> (1030765729@qtp-1759159753-14:null) ===START=== 0:0:0:0:0:0:0:1 -- GET
> command=deployVirtualMachine&zoneId=e8c08061-3157-430b-a43b-e276ba2ae47f&templateId=923979a4-5a43-11e2-aac8-d4bed9117aff&hypervisor=XenServer&serviceOfferingId=324327cd-d8f0-4298-91a7-640de8a0c0cf&networkIds=66f32dc3-e1ef-406d-a141-e32b25396121&response=json&sessionkey=CdZnNj5K%2BalbA2xqWMECuYgK7qQ%3D&_=1357728215878
> 2013-01-09 16:13:35,912 DEBUG [cloud.api.ApiDispatcher]
> (1030765729@qtp-1759159753-14:null) InfrastructureEntity name
> is:com.cloud.offering.ServiceOffering
> 2013-01-09 16:13:35,914 DEBUG [cloud.api.ApiDispatcher]
> (1030765729@qtp-1759159753-14:null) ControlledEntity name
> is:com.cloud.template.VirtualMachineTemplate
> 2013-01-09 16:13:35,915 ERROR [cloud.api.ApiServer]
> (1030765729@qtp-1759159753-14:null) unhandled exception executing api
> command: deployVirtualMachine
> java.lang.ClassCastException: java.util.ArrayList cannot be cast to
> java.lang.Long
> at
> com.cloud.api.ApiDispatcher.processParameters(ApiDispatcher.java:458)
> at
> com.cloud.api.ApiDispatcher.dispatchCreateCmd(ApiDispatcher.java:111)
> at com.cloud.api.ApiServer.queueCommand(ApiServer.java:407)
> at com.cloud.api.ApiServer.handleRequest(ApiServer.java:342)
> at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:311)
> at com.cloud.api.ApiServlet.doGet(ApiServlet.java:66)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
> at
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
> at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:401)
> at
> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> at
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
> at
> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
> at
> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
> at
> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
> at
> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
> at
> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
> at org.mortbay.jetty.Server.handle(Server.java:326)
> at
> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
> at
> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
> at
> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
> at
> org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira