List of usage examples for org.springframework.http.client ClientHttpResponse getBody
InputStream getBody() throws IOException;
From source file:org.cloudfoundry.caldecott.client.HttpTunnel.java
private byte[] receiveDataBuffered(long page) { final String dataUrl = url + this.tunnelInfo.get("path_out") + "/" + page; byte[] responseBytes; try {//from w ww. j a va 2 s . co m responseBytes = restOperations.execute(dataUrl, HttpMethod.GET, new RequestCallback() { public void doWithRequest(ClientHttpRequest clientHttpRequest) throws IOException { clientHttpRequest.getHeaders().set("Auth-Token", auth); } }, new ResponseExtractor<byte[]>() { public byte[] extractData(ClientHttpResponse clientHttpResponse) throws IOException { if (logger.isDebugEnabled()) { logger.debug("HEADER: " + clientHttpResponse.getHeaders().toString()); } InputStream stream = clientHttpResponse.getBody(); byte[] data = readContentData(stream); if (logger.isDebugEnabled()) { logger.debug("[" + data.length + " bytes] GET from " + dataUrl + " resulted in: " + clientHttpResponse.getStatusCode()); } return data; } }); } catch (HttpStatusCodeException e) { if (logger.isDebugEnabled()) { logger.debug("GET from " + dataUrl + " resulted in: " + e.getStatusCode().value()); } throw e; } return responseBytes; }
From source file:org.openflamingo.uploader.handler.HttpToLocalHandler.java
/** * HTTP URL? .// w w w . j a v a 2s . c om * * @param http HTTP * @return HTTP Response String * @throws Exception HTTP ? ?? ? ? */ private String getResponse(Http http) throws Exception { jobLogger.info("HTTP URL? ? ."); String url = jobContext.getValue(http.getUrl()); String method = jobContext.getValue(http.getMethod().getType()); String body = jobContext.getValue(http.getBody()); jobLogger.info("HTTP URL Information :"); jobLogger.info("\tURL = {}", url); jobLogger.info("\tMethod = {}", method); HttpComponentsClientHttpRequestFactory factory = new HttpComponentsClientHttpRequestFactory(); ClientHttpRequest request = null; if ("POST".equals(method)) { request = factory.createRequest(new java.net.URI(url), POST); } else { request = factory.createRequest(new java.net.URI(url), GET); } if (http.getHeaders() != null && http.getHeaders().getHeader().size() > 0) { List<Header> header = http.getHeaders().getHeader(); jobLogger.info("HTTP Header :", new String[] {}); for (Header h : header) { String name = h.getName(); String value = jobContext.getValue(h.getValue()); request.getHeaders().add(name, value); jobLogger.info("\t{} = {}", name, value); } } String responseBodyAsString = null; ClientHttpResponse response = null; try { response = request.execute(); responseBodyAsString = new String(FileCopyUtils.copyToByteArray(response.getBody()), Charset.defaultCharset()); jobLogger.debug("HTTP ? ? ? .\n{}", responseBodyAsString); jobLogger.info("HTTP ? . ? '{}({})'.", response.getStatusText(), response.getRawStatusCode()); if (response.getRawStatusCode() != HttpStatus.ORDINAL_200_OK) { throw new SystemException(ExceptionUtils.getMessage( "HTTP URL ? . ? OK '{}({})' ? .", response.getStatusText(), response.getRawStatusCode())); } } catch (Exception ex) { ex.printStackTrace(); throw new SystemException( ExceptionUtils.getMessage("HTTP URL ? . ? : {}", ExceptionUtils.getRootCause(ex).getMessage()), ex); } finally { try { response.close(); } catch (Exception ex) { // Ignored } } return responseBodyAsString; }
From source file:nl.gridshore.nosapi.impl.NosApiResponseErrorHandler.java
@Override public void handleError(ClientHttpResponse response) throws IOException { logger.debug("Handle error '{}' received from the NOS server.", response.getStatusCode().name()); HttpStatus statusCode = response.getStatusCode(); MediaType contentType = response.getHeaders().getContentType(); Charset charset = contentType != null ? contentType.getCharSet() : null; byte[] body = FileCopyUtils.copyToByteArray(response.getBody()); switch (statusCode) { case BAD_REQUEST: case UNAUTHORIZED: case FORBIDDEN: throwClientException(charset, body); default:/* w w w . j av a 2s. c o m*/ // do nothing, let the series resolving do it' work } switch (statusCode.series()) { case CLIENT_ERROR: throw new HttpClientErrorException(statusCode, response.getStatusText(), body, charset); case SERVER_ERROR: throw new HttpServerErrorException(statusCode, response.getStatusText(), body, charset); default: throw new RestClientException("Unknown status code [" + statusCode + "]"); } }
From source file:com.card.loop.xyz.controller.LearningObjectController.java
public void uploadAllLOToInformatron() { try {/* www . j a va2 s .c om*/ SimpleClientHttpRequestFactory rf = new SimpleClientHttpRequestFactory(); ClientHttpRequest req = rf.createRequest( URI.create(AppConfig.LOOP_URL + "/loop-XYZ/loop/LO/availableLO"), HttpMethod.GET); ClientHttpResponse response = req.execute(); StringBuilder sb = new StringBuilder(); BufferedReader br = new BufferedReader(new InputStreamReader(response.getBody())); ClientHttpRequest req2 = rf.createRequest( URI.create(AppConfig.INFORMATRON_URL + "/InformatronYX/informatron/LO/upload/availableLOs"), HttpMethod.POST); BufferedWriter req2Writer = new BufferedWriter(new OutputStreamWriter(req2.getBody())); String string = br.readLine(); br.close(); req2Writer.write(string); req2Writer.close(); req2.getHeaders().add("Content-Type", "application/json"); System.out.println(string); ClientHttpResponse response2 = req2.execute(); BufferedReader reader = new BufferedReader(new InputStreamReader(response2.getBody())); try { String str = reader.readLine(); if (str.equals("true")) System.out.println("SUCCESS!!"); else System.err.println("FAILL!!"); } catch (Exception ex) { Logger.getLogger(LearningObjectController.class.getName()).log(Level.SEVERE, null, ex); } } catch (IOException ex) { Logger.getLogger(LearningObjectController.class.getName()).log(Level.SEVERE, null, ex); } }
From source file:org.springframework.social.exfm.api.impl.ExFmErrorHandler.java
@Override public boolean hasError(ClientHttpResponse response) throws IOException { if (super.hasError(response)) { Status errorDetails = extractErrorDetailsFromResponse(response); return !isIgnorableError(errorDetails); }//from w w w .ja va2 s.c o m // only bother checking the body for errors if we get past the default // error check String content = readFully(response.getBody()); return !content.contains("\"status_code\": 200") && !content.contains("\"status_code\":200"); }
From source file:co.mafiagame.telegraminterface.inputhandler.UpdateController.java
private void setErrorHandler(RestTemplate restTemplate) { restTemplate.setErrorHandler(new ResponseErrorHandler() { @Override// w ww . j av a2 s . co m public boolean hasError(ClientHttpResponse clientHttpResponse) throws IOException { return !clientHttpResponse.getStatusCode().equals(HttpStatus.OK); } @Override public void handleError(ClientHttpResponse clientHttpResponse) throws IOException { logger.error("error calling telegram getUpdate\n code:{}\n{}", clientHttpResponse.getStatusCode(), IOUtils.toString(clientHttpResponse.getBody())); } }); }
From source file:sparklr.common.AbstractAuthorizationCodeProviderTests.java
private void verifyAuthorizationPage(OAuth2RestTemplate restTemplate, String location) { final AtomicReference<String> confirmationPage = new AtomicReference<String>(); AuthorizationCodeAccessTokenProvider provider = new AuthorizationCodeAccessTokenProvider() { @Override/*from w ww . j a v a2 s.c om*/ protected ResponseExtractor<ResponseEntity<Void>> getAuthorizationResponseExtractor() { return new ResponseExtractor<ResponseEntity<Void>>() { public ResponseEntity<Void> extractData(ClientHttpResponse response) throws IOException { confirmationPage .set(StreamUtils.copyToString(response.getBody(), Charset.forName("UTF-8"))); return new ResponseEntity<Void>(response.getHeaders(), response.getStatusCode()); } }; } }; try { provider.obtainAuthorizationCode(restTemplate.getResource(), restTemplate.getOAuth2ClientContext().getAccessTokenRequest()); } catch (UserApprovalRequiredException e) { // ignore } String page = confirmationPage.get(); verifyAuthorizationPage(page); }
From source file:nu.yona.server.rest.RestClientErrorHandler.java
@Override public void handleError(ClientHttpResponse response) throws IOException { logger.error("Response error: {} {}", getStatusCode(response), response.getStatusText()); Optional<ErrorResponseDto> yonaErrorResponse = getYonaErrorResponse(response); yonaErrorResponse.ifPresent(yer -> { throw UpstreamException.yonaException(getStatusCode(response), yer.getCode(), yer.getMessage()); });//from ww w . j av a 2 s . c o m throw UpstreamException.remoteServiceError(getStatusCode(response), convertStreamToString(response.getBody())); }
From source file:org.springframework.social.exfm.api.impl.ExFmErrorHandler.java
private void handleUncategorizedError(ClientHttpResponse response, Status status) throws IOException { try {//from w ww .j av a2s .com super.handleError(response); } catch (Exception e) { if (status != null && !status.getStatus_code().equals("200")) { String m = status.getStatus_text(); throw new UncategorizedApiException("exfm", m, e); } else { String content = readFully(response.getBody()); if (content.contains("404 NOT FOUND")) { throw new ResourceNotFoundException("exfm", "Not found"); } throw new UncategorizedApiException("exfm", "No error details from ExFm", e); } } }
From source file:org.fao.geonet.utils.XmlRequest.java
protected final Element executeAndReadResponse(HttpRequestBase httpMethod) throws IOException, BadXmlResponseEx { final ClientHttpResponse httpResponse = doExecute(httpMethod); if (httpResponse.getRawStatusCode() > 399) { httpMethod.releaseConnection();// w ww. j a va 2s . c o m throw new BadServerResponseEx(httpResponse.getStatusText() + " -- URI: " + httpMethod.getURI() + " -- Response Code: " + httpResponse.getRawStatusCode()); } byte[] data = null; try { data = IOUtils.toByteArray(httpResponse.getBody()); return Xml.loadStream(new ByteArrayInputStream(data)); } catch (JDOMException e) { throw new BadXmlResponseEx( "Response: '" + new String(data, "UTF8") + "' (from URI " + httpMethod.getURI() + ")"); } finally { httpMethod.releaseConnection(); sentData = getSentData(httpMethod); } }