У меня есть web-app
и web service
, упакованные с использованием одного и того же war
файла. Я пытаюсь потреблять web-app
, а также web-service
сверх SSL
в Tomcat 8
. Поэтому я создал хранилище ключей и настроил его через Tomcat server.xml
. Теперь я могу получить доступ к обоим через браузер через https:localhost:8443
.
Но когда я пытаюсь вызвать службу через клиент службы из веб-приложения, я получаю сообщение об ошибке
javax. net .ssl.SSLHandshakeException: sun. security.validator.ValidatorException: сбой построения пути PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти допустимый путь сертификации для запрошенной цели
Очевидно, что сервер не находит правильный сертификат. Нужно ли добавлять ключи в папку java cacerts в JAVA_HOME?
Это мой сервер Tomcat. xml
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
keystoreFile="${catalina.base}/conf/tomcat.keystore" keystorePass="password"
truststoreFile="${catalina.base}/conf/tomcat.keystore" truststorePass="password"
clientAuth="false" sslProtocol="TLS" />