Может у кого-нибудь есть пример проверки подлинности NTLM для шаблона отдыха или, пожалуйста, дайте мне знать, что я делаю не так?
String[] args ={"username",password","HOST", "DOMAIN"};
restTemplate.setRequestFactory(buildHttpComponentsClientHttpRequestFactory(args));
responseFromCRM = restTemplate.postForObject(crmUserCreateUrl, customerUserProfile, CustomerUserProfile.class);
private static HttpComponentsClientHttpRequestFactory buildHttpComponentsClientHttpRequestFactory(String[] args) {
PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager();
cm.setMaxTotal(128);
cm.setDefaultMaxPerRoute(24);
RequestConfig.Builder requestBuilder = RequestConfig.custom().setConnectTimeout(5000).setSocketTimeout(10000);
Registry<AuthSchemeProvider> authSchemeRegistry = RegistryBuilder.<AuthSchemeProvider> create().register(AuthSchemes.NTLM, new NTLMSchemeFactory())
.register(AuthSchemes.SPNEGO, new SPNegoSchemeFactory()).build();
CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(AuthScope.ANY, new NTCredentials(args[0], args[1], args[2], args[3]));
HttpClientBuilder builder = HttpClientBuilder.create().setConnectionManager(cm).setDefaultRequestConfig(requestBuilder.build())
.setDefaultAuthSchemeRegistry(authSchemeRegistry).setDefaultCredentialsProvider(credentialsProvider);
return new HttpComponentsClientHttpRequestFactory(builder.build());
}
При запуске я получаю следующее сообщение об ошибке
ИНФОРМАЦИЯ |JVM 1 |главная |2018/12/04 14: 55: 31.456 |org.springframework.web.util.NestedServletException: отправка обработчика не удалась;Вложенным исключением является java.lang.LinkageError: нарушение ограничения загрузчика: при разрешении метода "org.springframework.http.client.HttpComponentsClientHttpRequestFactory. (Lorg / apache / http / client / HttpClient;) V" загрузчик классов (экземпляр класса debr)/ tomcat / HybrisWebappLoader $ HybrisWebappClassLoader) текущего класса, uk / co / frw / storefront / controllers / pages / AbstractRegisterPageController и загрузчик классов (экземпляр de / hybris / bootstrap / loader / PlatformInPlaceClassLoader) для метода или определения метода/ springframework / http / client / HttpComponentsClientHttpRequestFactory, имеют различные объекты Class для типа org / apache / http / client / HttpClient, используемого в подписи