Я получаю следующее исключение при вызове мыльного веб-сервиса:
Имя хоста URL-адреса https не соответствует общему имени (CN) в сертификате сервера в доверенном хранилище клиента.Убедитесь, что сертификат сервера правильный, или чтобы отключить эту проверку (НЕ рекомендуется для производства), установите для свойства конфигурации TLS клиента CXF «disableCNCheck» значение true.
Это связано с тем, что URL-адрес конечной точки мыла имеет IP-адресадрес вместо имени домена в сертификате SSL.В других моих java-приложениях я обычно исправляю это с помощью этого кода;
HostnameVerifier {
@Override
public boolean verify(String hostName,
SSLSession session) {
return hostName.equals("serverIP");
}
Но для этого случая я создал клиент, используя инструмент WSIMPORT в Netbeans, и не могу понятьКак ввести код верификатора имени хоста.Я пробовал использовать внутренний API Sun (хотя и не рекомендуется), как;((BindingProvider) port).getRequestContext().put(com.sun.xml.internal.ws.transport.https.client.hostname.verifier, new HostNameVerifierClass());
но это тоже не сработало.Как я могу это исправить?