首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RMI、ClassNotFoundException

RMI、ClassNotFoundException
EN

Stack Overflow用户
提问于 2012-01-24 21:47:54
回答 2查看 4.7K关注 0票数 0

在Netbeans下,我创建了一个包含接口"i_object“的项目,该接口表示远程对象"impl_i_object”,"impl_i_object“实现所有接口方法。一个主类指向客户端"Main_client“,另一个指向服务器"Main_server”...当我启动服务器和客户端时,它的工作很顺利。

但是当我将我的项目分成两个项目(客户端和服务器)时,请看屏幕截图:

在这里,当我运行服务器时,它可以工作,但当我运行客户端时,它显示以下错误:

代码语言:javascript
复制
Exception in thread "main" java.rmi.UnmarshalException: error unmarshalling return; nested exception is: 
java.lang.ClassNotFoundException: server.i_object (no security manager: RMI class loader disabled)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at java.rmi.Naming.lookup(Naming.java:101)
at client.Main_client.main(Main_client.java:24)
    Caused by: java.lang.ClassNotFoundException: server.i_object (no security manager:  RMI class loader disabled)
at sun.rmi.server.LoaderHandler.loadProxyClass(LoaderHandler.java:554)
at java.rmi.server.RMIClassLoader$2.loadProxyClass(RMIClassLoader.java:646)
at java.rmi.server.RMIClassLoader.loadProxyClass(RMIClassLoader.java:311)
at sun.rmi.server.MarshalInputStream.resolveProxyClass(MarshalInputStream.java:257)
at java.io.ObjectInputStream.readProxyDesc(ObjectInputStream.java:1549)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1511)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1750)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
... 3 more
    Java Result: 1

有什么问题吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-01-24 21:52:55

上面写着:

无安全管理器:已禁用RMI类加载器

RMI需要安全管理器才能运行。

示例:

http://www.coderanch.com/t/459111/java/java/no-security-manager-rmi-class

更新:link讨论了RMI中的安全性

票数 0
EN

Stack Overflow用户

发布于 2015-09-29 16:40:23

对我来说起作用的是,在每个项目服务器和客户端中使用相同的包名制作一个包中的接口副本

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8987883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档