我試圖做RMI一個簡單的程序。但是,我發現了以下異常運行線 Naming.rebind(採用「InterfaceName」,Remoteserverobject),同時,java.security.AccessControlException:拒絕訪問異常
java.security.AccessControlException: 訪問被拒絕 (java.net.SocketPermission 127.0.0.1:1099連接,解決)
我的代碼如下:
public static void main(String[] args) throws Exception {
if(System.getSecurityManager()==null)
{
System.setSecurityManager(new RMISecurityManager());
}
Remoteserver objremoteserver=new Remoteserver();
objremoteserver.setmsg("Hello! How are you?");
System.out.println(objremoteserver.getmsg());
try
{
Naming.rebind("Remotemethod", objremoteserver);
System.out.println("Server Started");
}
catch(RemoteException re)
{
System.out.println(re.getLocalizedMessage());
}
finally
{
System.out.println("Unknown Exception Occured!!!!");
}
}
如何解決這個問題。在此先感謝
錯誤的方式。除非您告訴它,否則JVM不會在安全管理器下運行。 RMISecurityManager沒有任何屬性需要設置,所以他們的缺席並不能解釋任何東西。 「使用默認管理器」和「創建全新安全管理器」的指令是自相矛盾的,因此這個答案是沒有意義的。 – EJP 2013-03-21 22:55:21