Отсутствует SNI с сгенерированным jaxws-maven-plugin мыльным клиентом в среде java8 (openjdk 1.8.0_101) и wildfly 10.1

Вот проблема

У меня есть сгенерированный код jaxws-maven-plugin (версия 2.5, jaxws-tools 2.3.0) для wsdl (для службы мыла)

Он сгенерировал код с клиентом @WebServiceClient (javax.xml.ws java1.8).

Когда я запускаю этот клиент в Junit для сайта, все нормально, я получаю правильное ssl-соединение и получаю ответ. Но когда я запустил приложение, используя этот клиент, для того же сайта в wildfly 10.1, я фактически получил SSLHandshakeException, uncognized_name, что указывает на отсутствие SNI. У меня был собственный клиент, который я написал с помощью HttpsURLConnection, он отлично работает. Так что я действительно застрял, почему это происходит.

Код, сгенерированный из maven, выглядит следующим образом (у меня может быть только код peudo)

@WebServiceClient(name = "service_name", targetNamespace = "https://namespace.com/xxxxxx/v2", wsdlLocation = "/wsdl/targetwsdl.wsdl")
public class DTServerModuleServiceV2
    extends Service
{

}

person user2412555    schedule 28.02.2018    source источник


Ответы (1)


Я вижу только один параметр, который может изменить это поведение. Из Справочного руководства по JSSE , попробуйте -Djsse.enableSNIExtension=false, так как по умолчанию установлено значение true. Существует одно длинное обсуждение и одно техническое объяснение здесь , но ваш вопрос на самом деле не является дубликатом. Сообщите нам, если проблема решена.

Кстати, ваша версия Java устарела и, как известно, содержит ошибки SSL.

person Eugène Adell    schedule 06.03.2018
comment
Я использую java 8 и нашел основную причину, это cxf вместе с java 8 есть ошибка, которая отключает SNI... - person user2412555; 07.03.2018