Полагаю, вы используете tomcat 5.5, скомпилированный с gcj, в каком-то дистрибутиве linux (debian или ubuntu?) С java-1.5.0-gcj. Вы можете найти помощь по теме здесь:
https://bugzilla.redhat.com/show_bug.cgi?id=238613
Проверьте, действительно ли имеется хранилище ключей, указанное в сообщении об исключении, и находится ли оно в формате JKS. Или укажите атрибут keystoreFile в вашем файле server.xml на файл cacerts, поставляемый вместе с вашей JVM (если мое предположение было правильным, должно быть /usr/lib/jvm/java-1.5.0-gcj-4.3-1.5.0.0/jre/lib / security / cacerts) и импортируйте туда свой самозаверяющий сертификат.
Файл с исходными каскадами имеет пароль по умолчанию = changeit
Однако я предлагаю вам использовать sun-jvm или openjdk-1.6.0, который поставляется из вашего дистрибутива, чтобы избежать больших хлопот, особенно если это один из ваших первых ssl-развертываний.
Edit:
Позвольте мне добавить сюда мою рабочую конфигурацию:
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/etc/pki/java/cacerts"
keystorePass="changeit" keystoreType="JKS"
keyAlias="tomcat"
/>
В хранилище ключей / etc / pki / java / cacerts я сгенерировал пару ключей:
$JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA -keystore /etc/pki/java/cacerts
Примечание: если вы не указали псевдоним ключа в server.xml, будет использоваться первая пара ключей, найденная в хранилище ключей.
Важное примечание: пароль хранилища ключей ДОЛЖЕН совпадать с паролем личного ключа!