[AS3]Cinnamon远程方法调用参数错误
作者:弃天笑 日期:2009-01-19
因为有点大意,远程调用方法的时候,在客户端发送时写错了一个参数造成的错误。
主要是因为远程服务那边新增一个方法,所以客户端对应的方法不是用工具生成的,自己手工写时写错。
是这样,远程的方法是这个
程序代码
public boolean addMoreVo(AfficheVo afficheVo, ArrayList<RoomVo> roomVos);
然后客户端的对应的实现类写新方法的时候写成了这样
程序代码
public function addMoreVo(afficheVo:AfficheVo, roomVos:Array):ServiceRequest
{
return cinnamon::getOperation("addMoreVo").execute([AfficheVo, roomVos]);
}
注意execute方法的AfficheVo参数,这样写的后果是提示下面的错误信息:
ERROR:No suitable service method for request: Request
service name = HandlerVoServices
operation name = addMoreVo
parameter types = [java.util.HashMap,java.util.ArrayList]
提示服务器没有addMoreVo这个方法,起初觉得很奇怪,以为是没更新到,确定了一下不是。
看它这里提示应该是参数错误,java.util.HashMap,这里于服务器对应的AfficheVo不一样,一直觉得很奇怪,怎么会出现这个错误呢?
我客户端传的是一个VO,而不是一个Object,怎么会和服务器的MAP对应呢?
不过参数错误,造成远程方法调用是肯定的,仔细检查了几遍,才发现客户端这里
程序代码
cinnamon::getOperation("addMoreVo").execute([AfficheVo, roomVos]);
竟然在需要传vo实例的地方,竟然直接传了class了(AfficheVo是一个class),
修正错误.....
程序代码
cinnamon::getOperation("addMoreVo").execute([afficheVo, roomVos]);
最后得到:flash里的class在服务器没有对应,所以当作object看到。。。映射到java的HashMap对象了
所以写程序必须小心....排除错误也要一步一步观察
主要是因为远程服务那边新增一个方法,所以客户端对应的方法不是用工具生成的,自己手工写时写错。
是这样,远程的方法是这个
程序代码public boolean addMoreVo(AfficheVo afficheVo, ArrayList<RoomVo> roomVos);
然后客户端的对应的实现类写新方法的时候写成了这样
程序代码public function addMoreVo(afficheVo:AfficheVo, roomVos:Array):ServiceRequest
{
return cinnamon::getOperation("addMoreVo").execute([AfficheVo, roomVos]);
}
注意execute方法的AfficheVo参数,这样写的后果是提示下面的错误信息:
ERROR:No suitable service method for request: Request
service name = HandlerVoServices
operation name = addMoreVo
parameter types = [java.util.HashMap,java.util.ArrayList]
提示服务器没有addMoreVo这个方法,起初觉得很奇怪,以为是没更新到,确定了一下不是。
看它这里提示应该是参数错误,java.util.HashMap,这里于服务器对应的AfficheVo不一样,一直觉得很奇怪,怎么会出现这个错误呢?
我客户端传的是一个VO,而不是一个Object,怎么会和服务器的MAP对应呢?
不过参数错误,造成远程方法调用是肯定的,仔细检查了几遍,才发现客户端这里
程序代码cinnamon::getOperation("addMoreVo").execute([AfficheVo, roomVos]);
竟然在需要传vo实例的地方,竟然直接传了class了(AfficheVo是一个class),
修正错误.....
程序代码cinnamon::getOperation("addMoreVo").execute([afficheVo, roomVos]);
最后得到:flash里的class在服务器没有对应,所以当作object看到。。。映射到java的HashMap对象了
所以写程序必须小心....排除错误也要一步一步观察
评论: 2 | 引用: 0 | 查看次数: 1826
- 1
不是我写的。我之前写过的是很久以前的了,是用AS2写的
天地会的《Flex和java的socket通信》系列是你写的么?
一共5篇?还有继续的么?
对我很有帮助
一共5篇?还有继续的么?
对我很有帮助
- 1
发表评论
订阅
上一篇
下一篇
文章来自:
Tags: 




