List of usage examples for org.springframework.web.client RestTemplate getMessageConverters
public List<HttpMessageConverter<?>> getMessageConverters()
From source file:com.catalog.core.Api.java
@Override public ArrayList<GradesAttendForSubject> getGradesAttendForSubjectList(int studentId, Semester semester) { setStartTime();//from w ww . j av a 2 s . co m HttpEntity<?> requestEntity = getAuthHttpEntity(); RestTemplate restTemplate = new RestTemplate(); String url = "http://" + IP + EXTENSION + "/teacher/gradesForStudentT/" + studentId + ".json"; // Add the Jackson message converter restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter()); ResponseEntity<GradesAttendForSubjectVM> responseEntity = null; GradesAttendForSubjectVM allGradesAndAbsences = null; try { responseEntity = restTemplate.exchange(url, HttpMethod.GET, requestEntity, GradesAttendForSubjectVM.class); allGradesAndAbsences = responseEntity.getBody(); // TODO: fix if (semester != null) trimForSemester(allGradesAndAbsences, semester); } catch (RestClientException e) { return null; } getElapsedTime("getGradesAttendForSubjectList - "); return allGradesAndAbsences.getGradesAttendForSubjectList(); }
From source file:com.catalog.core.Api.java
@Override public StudentFinalScoresForAllSemestersVM getFinalScoresForStudent(int studentId) { setStartTime();//from ww w.java 2 s . c o m HttpEntity<?> requestEntity = getAuthHttpEntity(); RestTemplate restTemplate = new RestTemplate(); String url = "http://" + IP + EXTENSION + "/teacher/getFinalReportForStudent/" + studentId + ".json"; // Add the Jackson message converter restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter()); ResponseEntity<StudentFinalScoresForAllSemestersVM> responseEntity; StudentFinalScoresForAllSemestersVM studentFinalScoresForAllSemestersVM = null; try { responseEntity = restTemplate.exchange(url, HttpMethod.GET, requestEntity, StudentFinalScoresForAllSemestersVM.class); studentFinalScoresForAllSemestersVM = responseEntity.getBody(); } catch (Exception e) { return null; } getElapsedTime("getFinalScoresForStudent - "); return studentFinalScoresForAllSemestersVM; }
From source file:com.catalog.core.Api.java
@Override public CloseClassSituationVM closeClassSituation(int classGroupId, int semesterId) { setStartTime();//from w w w . ja va 2s.c o m HttpEntity<?> requestEntity = getAuthHttpEntity(); RestTemplate restTemplate = new RestTemplate(); String url = "http://" + IP + EXTENSION + "/teacher/closeClassSituationT/" + classGroupId + "," + semesterId + ".json"; // Add the Jackson message converter restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter()); ResponseEntity<CloseClassSituationVM> responseEntity; CloseClassSituationVM closeClassSituation = null; try { responseEntity = restTemplate.exchange(url, HttpMethod.GET, requestEntity, CloseClassSituationVM.class); closeClassSituation = responseEntity.getBody(); } catch (Exception e) { return null; } getElapsedTime("closeClassSituation - "); return closeClassSituation; }
From source file:com.catalog.core.Api.java
@Override public MotivateIntervalVM motivateInterval(int studentId, int teacherId, int classGroupId, long date1, long date2) { setStartTime();/*from w w w . ja v a 2s . c o m*/ HttpEntity<?> requestEntity = getAuthHttpEntity(); RestTemplate restTemplate = new RestTemplate(); String url = "http://" + IP + EXTENSION + "/teacher/motivateIntervalT/" + studentId + "," + date1 + "," + date2 + ".json"; // Add the Jackson message converter restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter()); ResponseEntity<MotivateIntervalVM> responseEntity; MotivateIntervalVM motivateIntervalVM = null; try { responseEntity = restTemplate.exchange(url, HttpMethod.GET, requestEntity, MotivateIntervalVM.class); motivateIntervalVM = responseEntity.getBody(); } catch (Exception e) { return null; } getElapsedTime("motivateInterval - "); return motivateIntervalVM; }
From source file:com.catalog.core.Api.java
@Override public SubjectTeacherForClassVM getSubjectTeacherForClass(int subjectId, int teacherId, int classGroupId) { setStartTime();//from w w w . j av a2s. co m HttpEntity<?> requestEntity = getAuthHttpEntity(); RestTemplate restTemplate = new RestTemplate(); String url = "http://" + IP + EXTENSION + "/teacher/findByClassSubjectTeacherT/" + classGroupId + "," + subjectId + "," + teacherId + ".json"; // Add the Jackson message converter restTemplate.getMessageConverters().add(new MappingJacksonHttpMessageConverter()); ResponseEntity<SubjectTeacherForClassVM> responseEntity = null; SubjectTeacherForClassVM stfc = null; try { responseEntity = restTemplate.exchange(url, HttpMethod.POST, requestEntity, SubjectTeacherForClassVM.class); stfc = responseEntity.getBody(); } catch (RestClientException e) { return null; } Log.d("TAAAG", stfc.toString()); getElapsedTime("getSubjectTeacherForClass - "); return stfc; }
From source file:com.epl.ticketws.services.QueryService.java
public T query(String url, String method, String accept, Class<T> rc, Map<String, String> parameters) { try {//from w w w . ja v a 2s. com URI uri = new URL(url).toURI(); long timestamp = new Date().getTime(); HttpMethod httpMethod; if (method.equalsIgnoreCase("post")) { httpMethod = HttpMethod.POST; } else { httpMethod = HttpMethod.GET; } String stringToSign = getStringToSign(uri, httpMethod.name(), timestamp, parameters); // logger.info("String to sign: " + stringToSign); String authorization = generate_HMAC_SHA1_Signature(stringToSign, password + license); // logger.info("Authorization string: " + authorization); // Setting Headers HttpHeaders headers = new HttpHeaders(); if (accept.equalsIgnoreCase("json")) { headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON)); } else { headers.setAccept(Arrays.asList(MediaType.TEXT_XML)); } headers.add("Authorization", authorization); headers.add("OB_DATE", "" + timestamp); headers.add("OB_Terminal", terminal); headers.add("OB_User", user); headers.add("OB_Channel", channel); headers.add("OB_POS", pos); headers.add("Content-Type", "application/x-www-form-urlencoded"); HttpEntity<String> entity; if (httpMethod == HttpMethod.POST) { // Adding post parameters to POST body String parameterStringBody = getParametersAsString(parameters); entity = new HttpEntity<String>(parameterStringBody, headers); // logger.info("POST Body: " + parameterStringBody); } else { entity = new HttpEntity<String>(headers); } RestTemplate restTemplate = new RestTemplate( new BufferingClientHttpRequestFactory(new SimpleClientHttpRequestFactory())); List<ClientHttpRequestInterceptor> interceptors = new ArrayList<ClientHttpRequestInterceptor>(); interceptors.add(new LoggingRequestInterceptor()); restTemplate.setInterceptors(interceptors); // Converting to UTF-8. OB Rest replies in windows charset. //restTemplate.getMessageConverters().add(0, new StringHttpMessageConverter(Charset.forName(UTF_8))); if (accept.equalsIgnoreCase("json")) { restTemplate.getMessageConverters().add(0, new org.springframework.http.converter.json.MappingJackson2HttpMessageConverter()); } else { restTemplate.getMessageConverters().add(0, new org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter()); } ResponseEntity<T> response = restTemplate.exchange(uri, httpMethod, entity, rc); if (!response.getStatusCode().is2xxSuccessful()) throw new HttpClientErrorException(response.getStatusCode()); return response.getBody(); } catch (HttpClientErrorException e) { logger.error(e.getMessage()); e.printStackTrace(); } catch (MalformedURLException e) { logger.error(e.getMessage()); e.printStackTrace(); } catch (SignatureException e) { logger.error(e.getMessage()); e.printStackTrace(); } catch (URISyntaxException e) { logger.error(e.getMessage()); e.printStackTrace(); } catch (Exception e) { logger.error(e.getMessage()); e.printStackTrace(); } return null; }
From source file:org.apache.zeppelin.livy.BaseLivyInterpreter.java
private RestTemplate createRestTemplate() { String keytabLocation = getProperty("zeppelin.livy.keytab"); String principal = getProperty("zeppelin.livy.principal"); boolean isSpnegoEnabled = StringUtils.isNotEmpty(keytabLocation) && StringUtils.isNotEmpty(principal); HttpClient httpClient = null;// w w w.j a v a 2 s . co m if (livyURL.startsWith("https:")) { String keystoreFile = getProperty("zeppelin.livy.ssl.trustStore"); String password = getProperty("zeppelin.livy.ssl.trustStorePassword"); if (StringUtils.isBlank(keystoreFile)) { throw new RuntimeException("No zeppelin.livy.ssl.trustStore specified for livy ssl"); } if (StringUtils.isBlank(password)) { throw new RuntimeException("No zeppelin.livy.ssl.trustStorePassword specified " + "for livy ssl"); } FileInputStream inputStream = null; try { inputStream = new FileInputStream(keystoreFile); KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType()); trustStore.load(new FileInputStream(keystoreFile), password.toCharArray()); SSLContext sslContext = SSLContexts.custom().loadTrustMaterial(trustStore).build(); SSLConnectionSocketFactory csf = new SSLConnectionSocketFactory(sslContext); HttpClientBuilder httpClientBuilder = HttpClients.custom().setSSLSocketFactory(csf); RequestConfig reqConfig = new RequestConfig() { @Override public boolean isAuthenticationEnabled() { return true; } }; httpClientBuilder.setDefaultRequestConfig(reqConfig); Credentials credentials = new Credentials() { @Override public String getPassword() { return null; } @Override public Principal getUserPrincipal() { return null; } }; CredentialsProvider credsProvider = new BasicCredentialsProvider(); credsProvider.setCredentials(AuthScope.ANY, credentials); httpClientBuilder.setDefaultCredentialsProvider(credsProvider); if (isSpnegoEnabled) { Registry<AuthSchemeProvider> authSchemeProviderRegistry = RegistryBuilder .<AuthSchemeProvider>create().register(AuthSchemes.SPNEGO, new SPNegoSchemeFactory()) .build(); httpClientBuilder.setDefaultAuthSchemeRegistry(authSchemeProviderRegistry); } httpClient = httpClientBuilder.build(); } catch (Exception e) { throw new RuntimeException("Failed to create SSL HttpClient", e); } finally { if (inputStream != null) { try { inputStream.close(); } catch (IOException e) { LOGGER.error("Failed to close keystore file", e); } } } } RestTemplate restTemplate = null; if (isSpnegoEnabled) { if (httpClient == null) { restTemplate = new KerberosRestTemplate(keytabLocation, principal); } else { restTemplate = new KerberosRestTemplate(keytabLocation, principal, httpClient); } } else { if (httpClient == null) { restTemplate = new RestTemplate(); } else { restTemplate = new RestTemplate(new HttpComponentsClientHttpRequestFactory(httpClient)); } } restTemplate.getMessageConverters().add(0, new StringHttpMessageConverter(Charset.forName("UTF-8"))); return restTemplate; }
From source file:com.concentricsky.android.khanacademy.data.remote.KAEntityFetcherTask.java
@Override protected T doInBackground(Void... arg0) { // call API and fetch an entity tree (commonly the tree rooted at the root topic) RestTemplate restTemplate = new RestTemplate(); if (consumer != null) { restTemplate.setRequestFactory(new SpringRequestFactory(consumer)); }//w ww. java 2s . c o m // TODO : Set up stream parsing. // RequestCallback callback = new RequestCallback() { // // public void doWithRequest(ClientHttpRequest request) // throws IOException { // // TODO Auto-generated method stub // // } // // }; // // ResponseExtractor<T> extractor = new ResponseExtractor<T>() { // // public T extractData(ClientHttpResponse response) // throws IOException { // // InputStream stream = response.getBody(); // // // return null; // } // // }; // // restTemplate.execute(url, HttpMethod.GET, requestCallback, responseExtractor) // Provide a converter to the restTemplate to get automagic json --> pojo deserialization. // Provide a mapper to the converter so we can register the custom Video deserializer. Otherwise, the default ObjectMapper would do fine. ObjectMapper mapper = new ObjectMapper(); mapper.registerModule(new VideoDeserializerModule()); MappingJacksonHttpMessageConverter converter = new MappingJacksonHttpMessageConverter(); converter.setObjectMapper(mapper); restTemplate.getMessageConverters().add(converter); ModelBase entity = null; try { entity = restTemplate.getForObject(this.url, ModelBase.class); } catch (HttpClientErrorException e) { e.printStackTrace(); exception = e; // meanwhile, entity is null, so we let that return naturally. } catch (ResourceAccessException e) { // This one happens on Nexus 7 if we have set a SpringRequestFactory but get no Auth challenge. // org.springframework.web.client.ResourceAccessException: I/O error: No authentication challenges found; nested exception is java.io.IOException: No authentication challenges found e.printStackTrace(); Log.e(LOG_TAG, "url was " + url); exception = e; } T result; try { result = (T) entity; } catch (ClassCastException e) { e.printStackTrace(); exception = e; result = null; } Log.d(LOG_TAG, "Response received. Returning entity."); return result; }