Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
运行rmi程序时,如何对java.security.AccessControlException问题进行排序?_Java_Security_Rmi - Fatal编程技术网

运行rmi程序时,如何对java.security.AccessControlException问题进行排序?

运行rmi程序时,如何对java.security.AccessControlException问题进行排序?,java,security,rmi,Java,Security,Rmi,如何对java.security.AccessControlException问题进行排序?当我运行myRMIServer时,我得到了这个异常 我的代码: import java.rmi.*; import java.rmi.server.UnicastRemoteObject; public class myRMIServer { public static void main(String[] argv) {

如何对java.security.AccessControlException问题进行排序?当我运行myRMIServer时,我得到了这个异常

我的代码:

import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;

public class myRMIServer
{
        public static void main(String[] argv)
                {
                System.setSecurityManager(new RMISecurityManager());
                try
                        {
                        myRMIImpl implementation = new myRMIImpl("myRMIImplInstance");
                        }
                catch (Exception e)
                        {
                        System.out.println("Exception occurred: " + e);
                        }
                }
}


输出

Exception occurred: java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:1099 connect,resolve)

如何解决此问题?

定义授予所需权限的.policy文件,并将其命名为java.security.policy参数

或者除掉安全经理。只有在使用RMI代码库功能时才需要它

import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;

public class myRMIImpl extends UnicastRemoteObject implements myRMIInterface
{
        public myRMIImpl(String name) throws RemoteException
                {
                super();
                try
                        {
                        Naming.rebind(name, this);
                        }
                catch(Exception e)
                        {
                        System.out.println("Exception occurred: " + e);
                        }
                }
        public java.util.Date getDate()
                {
                return new java.util.Date();
                }
}
Exception occurred: java.security.AccessControlException: access denied (java.net.SocketPermission 127.0.0.1:1099 connect,resolve)