发表于: 2018-04-05 23:43:03
1 632
今天完成的事情:
.png)

.png)

.png)

一开始看了好久都搞不明白怎么把spring和RMI组合起来。
明天计划的事情:
遇到的问题:
1.报错:
从普通RMI改编时要注意需要将实现类的extends UnicastRemoteObject去掉,否则会报错[org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'refreshService' defined in class path resource [applicationContext.xml]: Initialization of bean failed; nested exception is java.rmi.server.ExportException: object already exported]
因为UnicastRemoteObject的作用就是生成stub object。
去掉服务层接口继承的那个类,运行成功。
.png)

原来异常信息是说,定义的接口里面的方法有问题,我仔细看了一下方法,方法好像少了点什么,原来使用远程方法调用都必须抛出一个RemoteException,因为 网络出现类似机器故障或者网络阻塞等问题时会产生RemoteException。在接口定义的方法里throws RemoteException,问题就解决了。
3.报错:(no security manager: RMI class loader disabled)
看了好久,问题在于自己把服务器端的StudentsService接口与客户端的StudentsService在配置文件里写的不是同一个路径。
更换为同一个路径,完美运行。
收获:
评论