标题:RMI同一个局域网不同机子连接不上
取消只看楼主
wx270722291
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-3-8
 问题点数:0 回复次数:0 
RMI同一个局域网不同机子连接不上
我用java写了一个RMI的服务程序和客户端程序,首先说明一下我的服务端程序和客户端程序是两个不同的项目,如果服务端程序和客户端程序在同一太电脑上访问是没有问题的,但是我把客户端程序拷贝到同一内网的其他机器上就不行了,Exception in thread "main" java.security.AccessControlException: access denied ( 192.168.40.10:1099 connect,resolve)
说明:192.168.40.10是服务器的内网IP,请问这是什么原因
下面是我的服务器代码
import
import java.rmi.AlreadyBoundException;
import java.rmi.Naming;
import java.rmi.RMISecurityManager;
import java.rmi.RemoteException;
import java.rmi.registry.LocateRegistry;
import java.rmi.registry.Registry;
import java.rmi.server.RMISocketFactory;


public class RMIServer {

    /**
     * @param args
     * @throws AlreadyBoundException
     */
    public static void main(String[] args) throws RemoteException,MalformedURLException, AlreadyBoundException {
        // 不必再执行rmiregistry了   
        Registry r = LocateRegistry.getRegistry();   
        LocateRegistry.createRegistry(1099);
        HelloInterface hello = new Helloimpl();   
  
        // 注册服务   
        Naming.rebind("rmi://192.168.40.10/hello",hello);

    }

}
 
下面是客户端代码
    public static void main(String[] args) throws MalformedURLException,RemoteException,NotBoundException{
        System.setSecurityManager(new RMISecurityManager());
        HelloInterface hello = (HelloInterface) Naming.lookup("//192.168.40.10/hello");
        System.out.println(hello.sayHello());
    }
}
 
在客户端和服务器端都有_stub.class文件,在网上看到一些帖子说需要_stub.class和_Skel.class,_Skel.class是放在服务器端,_stub.class是放在客户端,但是很奇怪的是我的生成出来只有_stub.class而没有_Skel.class,后来又在网上看到一句话:
jdk1.5对rmi作了简化,只生成_stub.class。

_Skel.class是jdk1.4及以下版本才有的。
 
我用的是JDK1.6,如果是优化应该就是正常的撒,所以在客户端和服务器端都有_stub.class文件,还是不行,总不可能让我在装一个1.4的来生成一个_Skel.class吧.
在JDK和JRE的java.policy都加上了
    permission "*:1024-65535","connect,accept";
    permission java.security.AllPermission "", "";
现在我真的不知道是怎么回事了,如果有哪位大哥知道怎么解决这个错误,请及时告诉我
搜索更多相关主题的帖子: 客户端 服务器 thread 局域网 import 
2012-03-08 15:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-362562-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.166101 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved