2011-02-14 2 views
1

Java 키 도구를 사용하여 생성 한 키로 자체 서명 된 jar 파일이 있습니다. 런타임에서 나는 다음과 같은 코드로 인증서를 검색하려고 : 내 항아리가 독립, 명령 줄의 자바 응용 프로그램에서 사용하는 경우이 잘 작동자체 서명 된 jar의 인증서 검색 중 문제점

ProtectionDomain pd = MyApplication.class.getProtectionDomain(); 
Certificate[] cert = pd.getCodeSource().getCertificates(); 

. 그러나 Weblogic 서버에 배포 된 웹 응용 프로그램에서이 jar를 사용하면 getCertificates() 호출은 null을 반환합니다. 왜?

답변

1

컨테이너가 .WAR 파일의 압축을 풀도록 구성 되었기 때문에 .WAR 파일 대신 WEB-INF/classes 디렉토리에서 직접 클래스를로드합니다. 따라서 코드 소스는 디렉토리이므로 인증서가 없습니다.