List of usage examples for org.springframework.web.client RestTemplate exchange
@Override public <T> ResponseEntity<T> exchange(URI url, HttpMethod method, @Nullable HttpEntity<?> requestEntity, ParameterizedTypeReference<T> responseType) throws RestClientException
From source file:org.sakaiproject.rubrics.logic.RubricsServiceImpl.java
private String cloneRubricToSite(String rubricId, String toSite) { try {// w w w.j av a 2s.c o m String url = serverConfigurationService.getServerUrl() + RBCS_SERVICE_URL_PREFIX + "rubrics/clone"; RestTemplate restTemplate = new RestTemplate(); HttpHeaders headers = new HttpHeaders(); headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON); headers.add("Authorization", String.format("Bearer %s", generateJsonWebToken(RubricsConstants.RBCS_TOOL, toSite))); headers.add("x-copy-source", rubricId); headers.add("site", toSite); MultiValueMap<String, String> body = new LinkedMultiValueMap<String, String>(); HttpEntity<?> requestEntity = new HttpEntity<>(body, headers); ResponseEntity<Rubric> rubricEntity = restTemplate.exchange(url, HttpMethod.POST, requestEntity, Rubric.class); Rubric rub = rubricEntity.getBody(); return String.valueOf(rub.getId()); } catch (Exception e) { log.error("Exception when cloning rubric {} to site {} : {}", rubricId, toSite, e.getMessage()); } return null; }
From source file:org.springframework.batch.admin.web.server.JsonIntegrationTests.java
@Test public void testHomePage() throws Exception { RestTemplate template = new RestTemplate(); ResponseEntity<String> result = template.exchange(serverRunning.getUrl() + "/home.json", HttpMethod.GET, null, String.class); JsonWrapper wrapper = new JsonWrapper(result.getBody()); assertNotNull(wrapper.get("feed.resources")); assertNotNull(wrapper.get("feed.resources['/files'].uri")); }
From source file:org.springframework.batch.admin.web.server.JsonIntegrationTests.java
@Test public void testJobsPage() throws Exception { RestTemplate template = new RestTemplate(); ResponseEntity<String> result = template.exchange(serverRunning.getUrl() + "/jobs.json", HttpMethod.GET, null, String.class); JsonWrapper wrapper = new JsonWrapper(result.getBody()); // System.err.println(wrapper); assertNotNull(wrapper.get("jobs.resource")); assertNotNull(wrapper.get("jobs.registrations.infinite.name")); }
From source file:org.springframework.batch.admin.web.server.JsonIntegrationTests.java
@Test public void testJobConfigurationUpload() throws Exception { RestTemplate template = new RestTemplate(); HttpEntity<String> request = new HttpEntity<String>( FileUtils.readFileToString(new File("src/test/resources/test-job-context.xml"))); ResponseEntity<String> result = template.exchange(serverRunning.getUrl() + "/job-configuration.json", HttpMethod.POST, request, String.class); JsonWrapper wrapper = new JsonWrapper(result.getBody()); // System.err.println(wrapper); assertNotNull(wrapper.get("jobs.resource")); assertNotNull(wrapper.get("jobs.registrations['test-job'].name")); }
From source file:org.springframework.batch.admin.web.server.JsonIntegrationTests.java
@Test public void testJobLaunch() throws Exception { RestTemplate template = new RestTemplate(); ResponseEntity<String> result = template.exchange( serverRunning.getUrl() + "/jobs/job2.json?jobParameters=fail=true", HttpMethod.POST, null, String.class); JsonWrapper wrapper = new JsonWrapper(result.getBody()); // System.err.println(wrapper); assertNotNull(wrapper.get("jobExecution.resource")); assertNotNull(wrapper.get("jobExecution.status")); assertNotNull(wrapper.get("jobExecution.id")); // Poll for the completed job execution final String resource = wrapper.get("jobExecution.resource", String.class); Poller<JsonWrapper> poller = new DirectPoller<JsonWrapper>(100L); Future<JsonWrapper> poll = poller.poll(new Callable<JsonWrapper>() { public JsonWrapper call() throws Exception { RestTemplate template = new RestTemplate(); ResponseEntity<String> result = template.exchange(resource, HttpMethod.GET, null, String.class); JsonWrapper wrapper = new JsonWrapper(result.getBody()); // System.err.println(wrapper); Map<?, ?> map = wrapper.get("jobExecution.stepExecutions", Map.class); return map.isEmpty() || wrapper.get("jobExecution.stepExecutions['job2.step1']['resource']") == null ? null/*from w w w . j a va 2 s . co m*/ : wrapper; } }); JsonWrapper jobExecution = poll.get(500L, TimeUnit.MILLISECONDS); assertNotNull(jobExecution); // System.err.println(jobExecution); // Verify that there is a step execution in the result result = template.exchange( jobExecution.get("jobExecution.stepExecutions['job2.step1'].resource", String.class), HttpMethod.GET, null, String.class); wrapper = new JsonWrapper(result.getBody()); // System.err.println(wrapper); assertNotNull(wrapper.get("stepExecution.id")); assertNotNull(wrapper.get("stepExecution.status")); assertNotNull(wrapper.get("jobExecution.resource")); assertNotNull(wrapper.get("jobExecution.status")); assertNotNull(wrapper.get("jobExecution.id")); }
From source file:org.springframework.batch.admin.web.server.JsonIntegrationTests.java
@Test public void testJobStop() throws Exception { RestTemplate template = new RestTemplate(); ResponseEntity<String> result = template.exchange(serverRunning.getUrl() + "/jobs/infinite.json?jobParameters=timestamp=" + System.currentTimeMillis(), HttpMethod.POST, null, String.class); JsonWrapper wrapper = new JsonWrapper(result.getBody()); // System.err.println(wrapper); assertNotNull(wrapper.get("jobExecution.resource")); assertNotNull(wrapper.get("jobExecution.status")); assertNotNull(wrapper.get("jobExecution.id")); template.exchange(wrapper.get("jobExecution.resource", String.class), HttpMethod.DELETE, null, String.class); // Poll for the completed job execution final String resource = wrapper.get("jobExecution.resource", String.class); Poller<JsonWrapper> poller = new DirectPoller<JsonWrapper>(100L); Future<JsonWrapper> poll = poller.poll(new Callable<JsonWrapper>() { public JsonWrapper call() throws Exception { RestTemplate template = new RestTemplate(); ResponseEntity<String> result = template.exchange(resource, HttpMethod.GET, null, String.class); JsonWrapper wrapper = new JsonWrapper(result.getBody()); // System.err.println(wrapper); BatchStatus status = wrapper.get("jobExecution.status", BatchStatus.class); return status.isGreaterThan(BatchStatus.STOPPING) ? wrapper : null; }//from w w w .j av a 2 s . c o m }); JsonWrapper jobExecution = poll.get(500L, TimeUnit.MILLISECONDS); assertNotNull(jobExecution); BatchStatus status = jobExecution.get("jobExecution.status", BatchStatus.class); assertEquals(BatchStatus.STOPPED, status); }
From source file:org.springframework.data.hadoop.admin.cli.commands.BaseCommand.java
/** * call rest service with "Post" /* ww w .j ava2 s.c om*/ * @param <T> */ public <T> void callPostService(T object) { try { RestTemplate template = getRestTemplate(); // String message = template.postForObject(getCommandUrl(), object, String.class); HttpEntity<T> entity = new HttpEntity<T>(object); ResponseEntity<String> response = template.exchange(generateCommandUrl(), HttpMethod.POST, entity, String.class); String message = response.getBody(); if (message != null) { Log.show(message); } } catch (Throwable t) { showErrorMsg(t); } }
From source file:org.springframework.data.hadoop.admin.cli.commands.BaseCommand.java
/** * call rest service with "Delete" //from w w w .j a va 2 s. c o m * @param object */ public <T> void callDeleteService(T object) { try { RestTemplate template = getRestTemplate(); //template.delete(getCommandUrl()); HttpEntity<T> entity = new HttpEntity<T>(object); ResponseEntity<String> response = template.exchange(generateCommandUrl(), HttpMethod.DELETE, entity, String.class); String message = response.getBody(); if (message != null) { Log.show(message); } } catch (Throwable t) { showErrorMsg(t); } }
From source file:org.springframework.integration.samples.multipart.MultipartRestClient.java
public static void main(String[] args) throws Exception { RestTemplate template = new RestTemplate(); Resource s2logo = new ClassPathResource(resourcePath); MultiValueMap<String, Object> multipartMap = new LinkedMultiValueMap<String, Object>(); multipartMap.add("company", "SpringSource"); multipartMap.add("company-logo", s2logo); logger.info("Created multipart request: " + multipartMap); HttpHeaders headers = new HttpHeaders(); headers.setContentType(new MediaType("multipart", "form-data")); HttpEntity<Object> request = new HttpEntity<Object>(multipartMap, headers); logger.info("Posting request to: " + uri); ResponseEntity<?> httpResponse = template.exchange(uri, HttpMethod.POST, request, Object.class); if (!httpResponse.getStatusCode().equals(HttpStatus.OK)) { logger.error("Problems with the request. Http status: " + httpResponse.getStatusCode()); }//from w w w .j a v a2 s.c o m }
From source file:org.tnova.service.catalog.service.impl.SlaServiceImpl.java
@Override public boolean populateSlaTemplate(Nsd networkService) throws Exception { logger.info("Generate sla templates based on network service with id = {}", networkService.getId()); List<SlaTemplate> templates = SlaTemplateGenerator.convertNetorkServiceToSlaTemplate(networkService); if (templates == null || templates.isEmpty()) { logger.warn("No sla templates were generated. Please check possible errors!!!!"); return false; }//from w w w . j a va 2 s .co m for (SlaTemplate template : templates) { if (activationStatus.equalsIgnoreCase("enabled")) { logger.info("Populating sla template with id = {} to sla module with url = {}", template.getTemplateId(), slaModuleUrl); RestTemplate restTemplate = new RestTemplate(); ObjectMapper mapper = new ObjectMapper(); HttpEntity<String> request = new HttpEntity<String>(mapper.writeValueAsString(template), createHeaders(username, password)); ResponseEntity<String> response = restTemplate.exchange(slaModuleUrl, HttpMethod.POST, request, String.class); if (response == null || response.getStatusCode() != HttpStatus.CREATED) { logger.error("An error occurred during the request in sla module. PLEASE CHECK !!!"); if (response != null) { logger.error("Error Code is: " + response.getStatusCode().getReasonPhrase()); logger.error("Body is: " + response.getBody()); } return false; } else { logger.info("Request was successfully submitted to SLA module. "); } } else { logger.info("Population to sla template is not active, printed in log for verification"); ObjectMapper objectMapper = new ObjectMapper(); try { logger.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(template)); } catch (Exception ex) { ex.printStackTrace(); } } } return true; }