List of usage examples for org.springframework.web.client RestTemplate execute
@Override @Nullable public <T> T execute(URI url, HttpMethod method, @Nullable RequestCallback requestCallback, @Nullable ResponseExtractor<T> responseExtractor) throws RestClientException
From source file:jp.go.aist.six.util.core.web.spring.Http.java
/** * Generic HTTP method execution./* ww w .jav a 2 s.c om*/ * * @throws HttpException * when an exceptional condition occurred during the HTTP method execution. */ protected static <T> T _execute(final URL from_url, final HttpMethod method, final RequestCallback callback, final ResponseExtractor<T> extractor) { _LOG_.debug("HTTP: method = " + method + ", URL=" + from_url); URI from_uri = null; try { from_uri = from_url.toURI(); //throws URISyntaxException } catch (URISyntaxException ex) { throw new HttpException(ex); } T response = null; try { RestTemplate rest = new RestTemplate(); response = rest.execute(from_uri, method, callback, extractor); } catch (RestClientException ex) { _LOG_.error("HTTP error: " + ex); throw new HttpException(ex); } return response; }
From source file:de.zib.gndms.gndmc.test.gorfx.ESGFGet.java
@Override protected void run() throws Exception { SetupSSL setupSSL = new SetupSSL(); setupSSL.setKeyStoreLocation(keyStoreLocation); setupSSL.prepareKeyStore(passwd, passwd); setupSSL.setupDefaultSSLContext(passwd); final RestTemplate rt = new RestTemplate(); rt.execute(url, HttpMethod.GET, null, new ResponseExtractor<Object>() { @Override//w w w . j a v a 2s .c o m public Object extractData(final ClientHttpResponse response) throws IOException { String url = null; String cookieTmp = null; System.out.println(response.getStatusCode().toString()); for (String s : response.getHeaders().keySet()) for (String v : response.getHeaders().get(s)) { System.out.println(s + ":" + v); if ("Location".equals(s)) url = v; else if ("Set-Cookie".equals(s)) cookieTmp = v; } final String cookie = cookieTmp.split(";")[0]; if (url != null) rt.execute(decodeUrl(url), HttpMethod.GET, new RequestCallback() { @Override public void doWithRequest(final ClientHttpRequest request) throws IOException { System.out.println("setting cookie: " + cookie); request.getHeaders().set("Cookie", cookie); } }, new ResponseExtractor<Object>() { @Override public Object extractData(final ClientHttpResponse response) throws IOException { System.out.println(response.getStatusCode().toString()); System.out.println("Received data, copying"); InputStream is = response.getBody(); OutputStream os = new FileOutputStream(off); StreamCopyNIO.copyStream(is, os); System.out.println("Done"); return null; } }); return null; } }); }
From source file:com.artivisi.belajar.restful.ui.controller.ApplicationConfigControllerTestIT.java
@SuppressWarnings("unchecked") @Test//from w ww . jav a 2 s .c o m public void testUploadPakaiRestTemplate() { RestTemplate rest = new RestTemplate(); String jsessionid = rest.execute(login, HttpMethod.POST, new RequestCallback() { @Override public void doWithRequest(ClientHttpRequest request) throws IOException { request.getBody().write(("j_username=" + username + "&j_password=" + password).getBytes()); } }, new ResponseExtractor<String>() { @Override public String extractData(ClientHttpResponse response) throws IOException { List<String> cookies = response.getHeaders().get("Cookie"); // assuming only one cookie with jsessionid as the only value if (cookies == null) { cookies = response.getHeaders().get("Set-Cookie"); } String cookie = cookies.get(cookies.size() - 1); int start = cookie.indexOf('='); int end = cookie.indexOf(';'); return cookie.substring(start + 1, end); } }); MultiValueMap<String, Object> form = new LinkedMultiValueMap<String, Object>(); form.add("foto", new FileSystemResource("src/test/resources/foto-endy.jpg")); form.add("Filename", "cv-endy.pdf"); form.add("cv", new FileSystemResource("src/test/resources/resume-endy-en.pdf")); form.add("keterangan", "File Endy"); Map<String, String> result = rest.postForObject(target + "/abc123/files;jsessionid=" + jsessionid, form, Map.class); assertEquals("success", result.get("cv")); assertEquals("success", result.get("foto")); assertEquals("success", result.get("keterangan")); }
From source file:de.hybris.platform.marketplaceintegrationbackoffice.utils.MarketplaceintegrationbackofficeHttpClientImpl.java
@Override public boolean redirectRequest(final String requestUrl) throws IOException { final boolean result = true; final RestTemplate restTemplate = new RestTemplate(); final java.net.URI uri = java.net.URI.create(requestUrl); final java.awt.Desktop dp = java.awt.Desktop.getDesktop(); if (dp.isSupported(java.awt.Desktop.Action.BROWSE)) { dp.browse(uri);//from www . ja va 2 s . c om } restTemplate.execute(requestUrl, HttpMethod.GET, new RequestCallback() { @Override public void doWithRequest(final ClientHttpRequest request) throws IOException { // empty block should be documented } }, new ResponseExtractor<Object>() { @Override public Object extractData(final ClientHttpResponse response) throws IOException { final HttpStatus statusCode = response.getStatusCode(); LOG.debug("Response status: " + statusCode.toString()); return response.getStatusCode(); } }); return result; }
From source file:de.zib.gndms.gndmc.utils.HTTPGetter.java
private EnhancedResponseExtractor get(final HttpMethod method, final String url, final RequestCallback requestCallback) throws NoSuchAlgorithmException, KeyManagementException { CustomSSLContextRequestFactory requestFactory = new CustomSSLContextRequestFactory(sslContext); RestTemplate rt = new RestTemplate(requestFactory); requestFactory.setConnectTimeout(getTimeout()); requestFactory.setReadTimeout(getTimeout()); try {//www. j av a 2 s . c o m return rt.execute(url, method, requestCallback, new ResponseExtractor<EnhancedResponseExtractor>() { // call the EnhancedResponseExtractor registered for this response.statusCode @Override public EnhancedResponseExtractor extractData(ClientHttpResponse response) throws IOException { int statusCode = response.getStatusCode().value(); EnhancedResponseExtractor enhancedResponseExtractor = extractorMap.get(statusCode); if (null == enhancedResponseExtractor) enhancedResponseExtractor = extractorMap.get(statusCode / 100); if (null == enhancedResponseExtractor) enhancedResponseExtractor = extractorMap.get(0); if (null == enhancedResponseExtractor) throw new IllegalStateException( "No default ResponseExtractor registered. THIS IS NOT HAPPENING :/"); enhancedResponseExtractor.extractData(url, response); return enhancedResponseExtractor; } }); } catch (ResourceAccessException e) { throw new RuntimeException("Could not connect to " + url + ": " + e.getMessage(), e); } }
From source file:jp.go.aist.six.util.core.web.spring.SpringHttpClientImpl.java
/** * Generic HTTP method execution.//from www . j a v a 2 s . c o m * * @throws HttpException * when an exceptional condition occurred during the HTTP method execution. */ protected <T> T _execute(final String string_url, final HttpMethod method, final RequestCallback callback, final ResponseExtractor<T> extractor) { _LOG_.debug("HTTP: method = " + method + ", URL=" + string_url); URI uri = null; try { URL url = new URL(string_url); //throws MalformedURLException uri = url.toURI(); //throws URISyntaxException } catch (Exception ex) { _LOG_.error("HTTP client error: " + ex); throw new HttpException(ex); } T response = null; try { RestTemplate rest = new RestTemplate(); response = rest.execute(uri, method, callback, extractor); //throws RestClientException } catch (Exception ex) { _LOG_.error("HTTP client error: " + ex); throw new HttpException(ex); } return response; }