1
자바 프로그램을 2 개의 다른 소켓에 연결하는 데 문제가 있습니다. 기본적으로 내 RMI 서버 (포트 1099에 연결)를 초기화하고 포트 10002에서 PrologBeans를 초기화하려고합니다. 초기화 작업은 두 가지 모두 제대로 작동하는 것으로 보이지만 prologBeans에 액세스하려고하면 다음 오류가 발생합니다.자바 RMI - 소켓 권한 문제
Exception in thread "main" java.security.AccessControlException: access denied
(java.net.SocketPermission 127.0.0.1:10002 connect,resolve)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
at java.security.AccessController.checkPermission(AccessController.java:546)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at java.lang.SecurityManager.checkConnect(SecurityManager.java:1034)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:475)
at java.net.Socket.<init>(Socket.java:372)
at java.net.Socket.<init>(Socket.java:186)
at se.sics.prologbeans.PrologSession.connectToServer(PrologSession.java:511)
at se.sics.prologbeans.PrologSession.initSend(PrologSession.java:442)
at se.sics.prologbeans.PrologSession.send(PrologSession.java:368)
at se.sics.prologbeans.PrologSession.executeQuery(PrologSession.java:331)
at api.ActionRetriever.logEvent(ActionRetriever.java:68)
at contract.ContractManager.log_event(ContractManager.java:87)
at gui.RMITrial.main(RMITrial.java:39)
는
또한 (.가 내 RMI 코드가 패키지에 정책 파일을 배치 할이도 올바른 위치를 또는 기본 패키지에 있어야?) 정책 파일이 설정되는 :
grant {
permission java.security.AllPermission;};
나는 SocketPermission 오류가 발생하는 이유에 대해 누구나 알고 있는지 궁금합니다. 내 권한 설정이 잘못 되었습니까?
도움을 주시면 감사하겠습니다.
감사합니다.