当前位置: 技术问答>java相关
rmi中实现的奇观问题?
来源: 互联网 发布时间:2015-09-18
本文导语: 我按照http://java.sun.com/j2se/1.3/docs/guide/rmi/getstart.doc.html中的程序来实现RMI,但是运行不通。 于是我把服务器端上实现接口的类中的以下代码删除了,就能实现RMI; if (System.getSecurityManager() == null) { System.s...
我按照http://java.sun.com/j2se/1.3/docs/guide/rmi/getstart.doc.html中的程序来实现RMI,但是运行不通。
于是我把服务器端上实现接口的类中的以下代码删除了,就能实现RMI;
if (System.getSecurityManager() == null) {
System.setSecurityManager(new RMISecurityManager());
}
注意:我在java.policy文件中也没有加上permission java.security.AllPermission;
请教高手原因?分析一下。谢谢
于是我把服务器端上实现接口的类中的以下代码删除了,就能实现RMI;
if (System.getSecurityManager() == null) {
System.setSecurityManager(new RMISecurityManager());
}
注意:我在java.policy文件中也没有加上permission java.security.AllPermission;
请教高手原因?分析一下。谢谢
|
建两个目录,分别放Client和Server的代码(有人还喜欢再建个Download)
建议你搞来这个东西,来做stub类文件传输的服务器,
ftp://ftp.javasoft.com/pub/jdk1.1/rmi/class-server.zip
这是一个轻量级的服务器,不会被大量发展,但是用起来很方便,尤其是调试开发的时候。
zip包内含用法,介绍。不过你得用-deprecation来编译,还有就是可能要改一改两个文件的package名,源文件好像是example包的,可以改成你希望的包名,或者干脆不要package XXX那行。
开rmiregistry 和这个服务程序就行了,不过注意,这样启动rmiregistry,最好在一个新dos窗口中,输入
set classpath=
取消掉classpath,以免引起混乱
建议你搞来这个东西,来做stub类文件传输的服务器,
ftp://ftp.javasoft.com/pub/jdk1.1/rmi/class-server.zip
这是一个轻量级的服务器,不会被大量发展,但是用起来很方便,尤其是调试开发的时候。
zip包内含用法,介绍。不过你得用-deprecation来编译,还有就是可能要改一改两个文件的package名,源文件好像是example包的,可以改成你希望的包名,或者干脆不要package XXX那行。
开rmiregistry 和这个服务程序就行了,不过注意,这样启动rmiregistry,最好在一个新dos窗口中,输入
set classpath=
取消掉classpath,以免引起混乱
|
你是不是把服务段程序和客户端程序都放在了一个目录里?
这样,代码存根就不用通过网络传输了,而是仍然从本地读了。
你可以去查CSDN 的 FAQ
这样,代码存根就不用通过网络传输了,而是仍然从本地读了。
你可以去查CSDN 的 FAQ
|
顺便赏个脸去看看我的问题http://www.csdn.net/expert/topic/1056/1056449.xml?temp=.4465906