Я пытаюсь написать интеграционный тест для службы, созданной с использованием входящего шлюза Http, и он выдает мне ошибку «java.nio.charset.UnsupportedCharsetException: cesu-8».Есть идеи почему?Этот сервис работает правильно.У нас есть пакетное приложение, которое использует его несколько раз в день.Я хотел бы иметь интеграционный тест, который также может вызвать его.Вот мой тест:
@Test
public void receiveMessage() throws IOException {
final String xml = testUtil.getTestDocumentAsString("/serviceTestData/document.xml");
final RestTemplate template = new RestTemplate();
template.getMessageConverters()
.add(0, new StringHttpMessageConverter(Charset.forName("UTF-8")));
final HttpHeaders headers = new HttpHeaders();
MediaType mediaType = new MediaType("text", "xml", StandardCharsets.UTF_8);
headers.setContentType(mediaType);
final String credentials = this.user + ":" + this.pass;
final byte[] message = credentials.getBytes("UTF-8");
headers.add("Authorization", "Basic " + DatatypeConverter.printBase64Binary(message));
final HttpEntity request = new HttpEntity(xml, headers);
final ResponseEntity<Ack> result = template.postForEntity(url, request, Ack.class);
System.out.println(result.getBody().getStatus());
}
Ошибка: первопричина ServletException.java.nio.charset.UnsupportedCharsetException: cesu-8 в java.nio.charset.Charset.forName (Charset.java:536) в org.springframework.http.HttpHeaders.getAcceptCharset (HttpHeaders.jwork.spring .5 :96)интеграцииtoHeaders (DefaultHttpHeaderMapper.java:72) при org.springframework.integration.http.inbound.HttpRequestHandlingEndpointSupport.actualDoHandleRequest (HttpRequestHandlingEndpointSupport.java:459) при org.springframework.integration.http.inbound.HttpRequestHandlingEndpointSupport.doHandleRequest (HttpRequestHandlingEndpointSupport.java:399)в org.springframework.integration.http.inbound.HttpRequestHandlingMessagingGateway.handleRequest (HttpRequestHandlingMessagingGateway.java:103) в org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle (HttpRequestHandlerAdapter.java:51) в org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:967) в org.springbserv.perv.service.Java: 901) в org.springframework.web.servlet.Службаinternal.StubSecurityHelper $ ServletServiceAction.run (StubSecurityHelper.java:280) по адресу weblogic.servlet.internal.StubSecurityHelper $ ServletServiceAction.run (StubSecurityHelper.java:254) по адресу weblogic.servub.eljServServiceSecurityна weblogic.servlet.internal.ServletStubImpl.выполнить (ServletStubImpl.java:341) в weblogic.servlet.internal.TailFilter.doFilter (TailFilter.java:25) в weblogic.servlet.internal.FilterChainImpl.doFilter (FilterChainImpl.java:79) в org.springwera.FilterChainProxy..doFilter (FilterSecurityInterceptor.java:91) в org.springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter (FilterChainProxy.java:331) в org.springframework.security.web.access.ilil.ExceptionTransference) в org.springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter (FilterChainProxy.java:331) в org.springframework.security.web.session.SessionManagementFilter.doFilter (SessionManagement:13f)..security.web.FilterChainProxy $ VirtualFilterChain.doFilter (FilterChainProxy.java:331) в org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter (AnonymousAuthenticationFilter.java:111)по адресу org.springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter (FilterChainProxy.java:331) по адресу org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.Context.WebFile.RuFF).FilterChainProxy..java: 331) at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal (BasicAuthenticationFilter.java:215) в org.springframework.web.filter.OncePerRequestFilter.doFilj:springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter (FilterChainProxy.java:331) в org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:64) по адресу org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107) по адресу org.springframework.security.web.FilterChainProxy $ FilterFilha.in.in.in.in.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal (WebAsyncManagerIntegrationFilter.java:56) по адресу org.springframework.web.filter.OncePerRequestFilter.ilwork.wefFilterChainProxy $ VirtualFilterChain.doFilter (FilterChainProxy.java:331) в org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter (SecurityContextPersistenceFilter.jwork:10haha.FhaFFFF)Java: 331) в org.springframework.security.web.FilterChainProxy.doFilterInternal (FilterChainProxy.java:214) в org.springframework.security.web.FilterChainProxy.doFilter (FilterChainProxy.java: 177) по адресу org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate (DelegatingFilterProxy.java:346) по адресу org.springframework.web.filter.DelegatingFilterProxy.doFilter (DelegatingFilterProxy.serv.Filter.IlFlinter.Filter.Filter.Filter.Filter.Filter.Filter.Filter.Filter)..doFilter (FilterChainImpl.java:79) на веб-сайте weblogic.servlet.internal.WebAppServletContextsecurity.acl.internal.AuthenticatedSubject.doAs (AuthenticatedSubject.java:321) в weblogic.security.service.SecurityManager.runAs (SecurityManager.java:120) в weblogic.servlet.provider.WlsSubjectHandle.run (WlsSubjпо адресу.Execute (WebAppServletContext.java:2132) в weblogic.servlet.internal.ServletRequestImpl.run (ServletRequestImpl.java:1564) в weblogic.servlet.provider.ContainerSupportProviderImpl $ WlsRequestExecutor.run (ContainerSupportProviderImpl.java:254) в weblogic.work.ExecuteThread.execute (ExecuteThread.java:312) в weblogic.work.ExecuteThread.run (ExecuteThread.java:264)