浏览 1843 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-04-16
在学习RMI的时候,通过网上资料或者《Java网络编程和分布式计算》经典教程对RMI有了一定的了解。但是前几天在写一个网络应用软件的时候却发生了点问题。 服务器端,客户端都按照RMI规范完成之后,客户端在Naming.lookup()之后,获得的Object转换成接口的时候总是抛出java.lang.ClassCastException $Proxy ... 异常。调试了很长时间,也google了很多东西,但是都没有合适的解决方案。最后还是自力更生,丰衣足食了 主要原因:是服务器端的包结构和服务器端的包结构不同,这就造成了实际上你的服务器端的Interface的名字和你客户端的Interface名称不同,所以当然会造成转型异常了。 解决方法:把自己客户端涉及到RMI部分调整和服务器端完全一致。可能你的系统客户端包为com.xxx.client,而服务器端的包为com.xxx.server。你只需要将服务器端和客户端的包都改成同一个包名即可。例如都改成com.xxx.rmi 这样,调用一下看一下,哈哈,是不是没有异常了。就这样了,希望对大家有帮助。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |