Клиент для использования веб-службы с аутентификацией NTLM

#web-services #soap

#веб-службы #soap

Вопрос:

Получение этой ошибки при вызове службы.

401 — Неавторизованный: доступ запрещен из-за неверных учетных данных

Я попытался создать класс NtlmAuthenticator, который расширяет Authenticator и передает учетные данные в формате DOMAIN USERNAME и PASSWORD. Также установите Authenticator.setDefault(ntlmAuthenticator). Не работает.

Любой ответ был бы очень полезен.

Ответ №1:

Следуя документации Oracle, выяснилось, что NTLM можно использовать с прокси или серверами, но не с обоими одновременно.

Использовал apache CXF, и на этот раз это сработало.

Добавлен приведенный ниже код

 Client client = ClientProxy.getClient(port);
HTTPConduit http = (HTTPConduit) client.getConduit();
HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();
httpClientPolicy.setConnectionTimeout(36000);
//httpClientPolicy.setAllowChunking(false);
http.setClient(httpClientPolicy);