运行rmi程序时,如何对java.security.AccessControlException问题进行排序?
如何对java.security.AccessControlException问题进行排序?当我运行myRMIServer时,我得到了这个异常 我的代码:运行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) {
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)