У меня есть веб-сервис JAX-WS, который выполняет вызовы удаленного EJB на том же сервере.Все работает на Glassfish 3.1.1, и приложения развернуты EAR - один для веб-сервиса, другой для EJB.Это прекрасно работает локально, но при развертывании на тестовом сервере я получаю типичные исключения в отношении недоверенных (самозаверяющих) SSL-сертификатов.Вот соответствующая выдержка:
Caused by: com.sun.xml.ws.client.ClientTransportException: HTTP transport error: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at com.sun.xml.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:132)
Исключение происходит именно на той строке в веб-сервисе, где выполняется вызов EJB.Это озадачивает меня, потому что я не ожидал, что что-то будет иметь отношение к HTTPS в этой точке.
Наиболее многообещающий аспект на данный момент заключается в том, что это связано с координацией транзакций, как описано здесь ,который должен использовать HTTPS по умолчанию.Однако настройка com.sun.xml.ws.tx.preferredScheme = http не влияет на проблему.
Любые предложения приветствуются.