Проблема с получением сертификатов для самозаверяющего фляги - PullRequest
1 голос
/ 14 февраля 2011

У меня есть jar, который сам подписан с ключами, которые я сгенерировал, используя java keytool. Во время выполнения я пытаюсь получить сертификаты с помощью следующего кода:

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

Это прекрасно работает, когда мой jar используется в отдельном java-приложении командной строки. Однако когда я использую этот jar-файл в веб-приложении, развернутом на сервере Weblogic, вызов getCertificates () возвращает ноль. Почему?

1 Ответ

1 голос
/ 15 февраля 2011

Поскольку контейнер настроен на разархивирование файла .WAR, он загружает ваши классы из каталога WEB-INF / classes вместо файла .WAR напрямую. Таким образом, исходный код является каталогом, поэтому у него нет сертификата.

...