List of usage examples for org.springframework.web.client HttpMessageConverterExtractor extractData
@Override @SuppressWarnings({ "unchecked", "rawtypes", "resource" }) public T extractData(ClientHttpResponse response) throws IOException
From source file:org.eclipse.cft.server.core.internal.client.CloudFoundryClientFactory.java
private static String getJson(RestTemplate restTemplate, String urlString) { ClientHttpResponse response = null;/*from ww w . j a v a2 s. c o m*/ HttpMethod method = null; try { method = HttpMethod.GET; URI url = new UriTemplate(urlString).expand(); ClientHttpRequest request = restTemplate.getRequestFactory().createRequest(url, method); List<MediaType> acceptableMediaTypes = new ArrayList<MediaType>(); acceptableMediaTypes.add(MediaType.APPLICATION_JSON); request.getHeaders().setAccept(acceptableMediaTypes); //if (requestCallback != null) { // requestCallback.doWithRequest(request); //} response = request.execute(); if (response.getBody() != null) { HttpMessageConverterExtractor<String> extractor = new HttpMessageConverterExtractor<String>( String.class, restTemplate.getMessageConverters()); String data = extractor.extractData(response); return data; } ; } catch (IOException ex) { throw new ResourceAccessException( "I/O error on " + method.name() + " request for \"" + urlString + "\":" + ex.getMessage(), ex); } finally { if (response != null) { response.close(); } } return null; }
From source file:org.craftercms.commons.rest.HttpMessageConvertingResponseErrorHandler.java
@Override public void handleError(ClientHttpResponse response) throws IOException { HttpStatus status = response.getStatusCode(); HttpMessageConverterExtractor<?> responseExtractor = new HttpMessageConverterExtractor<>(responseType, messageConverters);/*from ww w . ja v a 2 s. com*/ Object errorDetails; try { errorDetails = responseExtractor.extractData(response); } catch (RestClientException e) { // No message converter to extract the response, so make the error details // the response body as string throw new RestServiceException(status, getResponseBodyAsString(response)); } throw new RestServiceException(status, errorDetails); }