我正在寫與Java RMI客戶端 - 服務器程序,我得到一個錯誤:Java RMI的java.security.AccessControlException:拒絕訪問
java.security.AccessControlException: access denied ("java.net.SocketPermission" "127.0.0.1:1099" "connect,resolve")
我的代碼如下所示:
package xxx;
import java.rmi.Naming;
import java.rmi.RemoteException;
public class Server extends Engine implements RemoteInterface {
public Server() {
super();
if(System.getSecurityManager() == null) {
System.setSecurityManager(new SecurityManager());
}
try {
Naming.rebind("Test", this);
System.out.println("Bound in registry!");
} catch(Exception ex) {
System.out.println(ex);
}
}
@Override
public void test() throws RemoteException {
System.out.println("test() invoked");
}
}
怎麼了?
你也忘了其他幾件事。這些遺漏都不會導致這個問題。 – EJP 2012-07-15 22:10:38
那麼,那麼你錯了,因爲添加這些修復問題。 – MikkoP 2012-07-16 09:27:11
唯一可以解決該問題的方法是刪除SecurityManager或修復.policy文件。 – EJP 2012-07-17 10:57:48