나는 Capture, AppletLogging 및 AbstractJLabel이라는 세 가지 클래스가 있습니다. . 나는 나의 %의 USERPROFILE의 %/한 java.policy 파일에 다음과 같은 권한을 설정 한 :동일한 코드베이스에있는 애플릿 클래스가있는 AccessControlException
grant codeBase "file:/C:/project/abc/target/test-classes/-" {
permission java.util.logging.LoggingPermission "control";
};
모든 클래스는 위의 부여에서 코드베이스에 있습니다. Capture가 AppletLogging에서 정적 메소드를 호출하면 모든 것이 정상적으로 작동합니다. AbstractJLabel가 AppletLogging에서 같은 정적 메소드를 호출하면 그때 이것은 썬 자바 플러그인 버전에서 실행
java.security.AccessControlException: access denied (java.util.logging.LoggingPermission control)
6 업데이트 35이 사람이 설명이 있습니까 얻을? 캡처 및 AbstractJLabel 정적 블록에서 정적 메소드를 호출하는 것이
가permission java.security.AllPermission;
참고 : 나는 같은 나는 모든 보조금 코드베이스 블록에 다음과 같은 경우에도 오류가 발생합니다.
애플릿이 신뢰를 필요로하는 경우 코드를 jar하고 디지털 서명하십시오. 사람들이 애플릿의 정책 파일을 왜 귀찮게하는지 이해할 수 없습니다. 정책 파일은 사용자가 제어하는 시스템을 제외하고 배포에 적합하지 않으며, 그렇다면 JWS가 더 나은 배포 옵션 일 수 있습니다. –
(정적 초기화 프로그램은 불행히도 "Java 2 보안 모델"에 의해 특별하게 다루어지지 않습니다. 스택 기반 보안 검사는 클래스 로더를 통과하여 클래스 초기화를 일으키는 코드로 되돌아갑니다.) –