Example usage for org.springframework.web.client RestTemplate getForObject

List of usage examples for org.springframework.web.client RestTemplate getForObject

Introduction

In this page you can find the example usage for org.springframework.web.client RestTemplate getForObject.

Prototype

@Override
    @Nullable
    public <T> T getForObject(URI url, Class<T> responseType) throws RestClientException 

Source Link

Usage

From source file:com.bytebybyte.mapquest.geocoding.service.standard.MapQuestTest.java

@Test
public void testGetDistanceUsingLatAndLon() {
    String location1 = "54.406505,18.67708";
    String location2 = "54.446251,18.570993";

    String ADDRESSURL = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=";

    String finalUrl = ADDRESSURL + location1 + "&destinations=" + location2
            + "&mode=driving&language=en-EN&sensor=false";
    System.out.println(finalUrl);

    RestTemplate restTemplate = new RestTemplate();
    String result = restTemplate.getForObject(finalUrl, String.class);
    System.out.println("Result : " + result);

    JsonParser jsonParser = new JsonParser();
    JsonObject jsonObject = (JsonObject) jsonParser.parse(result);

    JsonElement je = new JsonParser().parse(jsonObject.get("rows").toString());
    JsonArray jsonArray = je.getAsJsonArray();
    jsonObject = jsonArray.get(0).getAsJsonObject();

    JsonElement je1 = new JsonParser().parse(jsonObject.get("elements").toString());
    JsonArray jsonArray1 = je1.getAsJsonArray();
    jsonObject = jsonArray1.get(0).getAsJsonObject();

    JsonElement je2 = jsonObject.get("distance");
    JsonObject jo = je2.getAsJsonObject();
    System.out.println("Distance : " + jo.get("text"));

    Assert.assertEquals("OK", removeDoubleQuotes(jsonObject.get("status").toString()));
    Assert.assertEquals("24.4 km", removeDoubleQuotes(jo.get("text").toString()));
}

From source file:net.bull.javamelody.TestSpringRestTemplateInterceptor.java

/** Test. */
@Test//from ww  w  . ja va  2 s .  com
public void testSpringAOP() {
    final Counter springCounter = MonitoringProxy.getSpringCounter();
    springCounter.clear();
    final ApplicationContext context = new ClassPathXmlApplicationContext(
            new String[] { MONITORING_CONTEXT_FILENAME, TEST_CONTEXT_FILENAME, });
    final RestTemplate restTemplate = context.getBean(RestTemplate.class);
    final String url = "https://gturnquist-quoters.cfapps.io/api/random";
    springCounter.setDisplayed(false);
    try {
        restTemplate.getForObject(url, Object.class);
    } catch (final RestClientException e) {
        assertSame("requestsCount", 0, springCounter.getRequestsCount());
    }

    springCounter.setDisplayed(true);
    try {
        restTemplate.getForObject(url, Object.class);
    } catch (final RestClientException e) {
        assertSame("requestsCount", 1, springCounter.getRequestsCount());
    }
    try {
        restTemplate.getForObject(url + "?var={0}", Object.class, "var value");
    } catch (final RestClientException e) {
        assertSame("requestsCount", 1, springCounter.getRequestsCount());
    }
}

From source file:org.n52.tamis.rest.forward.processes.jobs.JobOutputsRequestForwarder.java

/**
 * {@inheritDoc} <br/>//ww w . ja  v a  2s . c  o m
 * <br/>
 * Delegates an incoming outputs (result document) request to the WPS proxy
 * and creates an instance of {@link ResultDocument}
 * 
 * @param parameterValueStore
 *            must contain the URL variable
 *            {@link URL_Constants_TAMIS#SERVICE_ID_VARIABLE_NAME} to
 *            identify the WPS instance and
 *            {@link URL_Constants_TAMIS#PROCESS_ID_VARIABLE_NAME} to
 *            identify the process and
 *            {@link URL_Constants_TAMIS#JOB_ID_VARIABLE_NAME} to identify
 *            the job
 * @return an instance of {@link ResultDocument}
 */
@Override
public <T> ResultDocument forwardRequestToWpsProxy(HttpServletRequest request, T requestBody,
        ParameterValueStore parameterValueStore) {
    initializeRequestSpecificParameters(parameterValueStore);

    String outputs_url_wpsProxy = createTargetURL_WpsProxy(request);

    RestTemplate outputsTemplate = new RestTemplate();

    // fetch the result document from WPS proxy and
    // deserialize it into TAMIS ResultDocument
    ResultDocument resultDocument = outputsTemplate.getForObject(outputs_url_wpsProxy, ResultDocument.class);

    return resultDocument;
}

From source file:Controladores.controladorProjeto.java

@RequestMapping(value = "getTags", method = RequestMethod.GET, headers = "Accept=*/*", produces = "text/html; charset=UTF-8")
public @ResponseBody String getTags(@RequestParam String tagName) {

    RestTemplate template = new RestTemplate();

    String listaJson = template.getForObject(
            "http://localhost:8088/Gerenciador_Atividades/get-autocomplete-funcionarios?tagName=" + tagName,
            String.class);

    return listaJson;
}

From source file:com.provenance.cloudprovenance.connector.traceability.TraceabilityStoreConnector.java

public String getTraceabilityRecordElement(String serviceId, String traceabilityRecordId,
        String tracebailityElementId) {

    String restURI = "http://" + server_add + ":" + port_no + "/" + service + "/" + resource + "/" + serviceId
            + "/" + this.TRACEABILITY_TYPE + "/" + traceabilityRecordId + "/" + tracebailityElementId;

    RestTemplate restTemplate = new RestTemplate();
    String responseElement = restTemplate.getForObject(restURI, String.class);

    return responseElement;

}

From source file:com.vermeg.convertisseur.service.ConvServiceImpl.java

@Override
public File load(String id) {
    RestTemplate restTemplate = new RestTemplate();
    String req = "http://localhost:8080/archive/document/" + id;
    File file;//from w ww  . j  a v a2s .c om
    return (restTemplate.getForObject(req, File.class));

}

From source file:com.provenance.cloudprovenance.connector.traceability.TraceabilityStoreConnector.java

public String getTraceabilityRecord(String serviceId, String traceabilityEntryId) {

    if (this.getTraceabilityRecordId() != null) {
        return this.getTraceabilityRecordId();
    }//from ww w  .  j a v  a  2s .  com

    String restURI = "http://" + server_add + ":" + port_no + "/" + service + "/" + resource + "/" + serviceId
            + "/" + this.TRACEABILITY_TYPE + "/" + traceabilityEntryId;

    RestTemplate restTemplate = new RestTemplate();
    String traceabilityRecordResponse = restTemplate.getForObject(restURI, String.class);

    return traceabilityRecordResponse;
}

From source file:com.puglieseweb.app.web.templates.pages.MainTemplate.java

@RequestMapping("/mainTemplate")
public String render(Node page, ModelMap model) throws RepositoryException {

    Map<String, String> navigation = new LinkedHashMap<String, String>();
    for (Node node : NodeUtil.getNodes(page.getSession().getNode("/home"), MgnlNodeType.NT_PAGE)) {
        if (!PropertyUtil.getBoolean(node, "hideInNavigation", false)) {
            navigation.put(node.getPath(), PropertyUtil.getString(node, "title", ""));
        }/*from  ww w.  j av  a2 s  .  c  om*/
    }
    model.put("navigation", navigation);
    model.put("message", "Test message");

    RestTemplate restTemplate = new RestTemplate();
    /**
     * Documentation can be found here: https://spring.io/blog/2009/03/27/rest-in-spring-3-resttemplate
     */
    final Quote quote = restTemplate.getForObject("http://gturnquist-quoters.cfapps.io/api/random",
            Quote.class);
    model.put("quote", quote.toString());

    return "pages/main.jsp";
}

From source file:de.loercher.localpress.core.api.LocalPressController.java

@RequestMapping(value = "/articles/new", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> getNewArticlesAround(@RequestParam Double lat, @RequestParam Double lon)
        throws InterruptedException, ExecutionException, JsonProcessingException {
    UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(GEO_URL).queryParam("lat", lat.toString())
            .queryParam("lon", lon.toString());

    RestTemplate template = new RestTemplate();
    List<Map<String, Object>> geoResponse = template.getForObject(builder.build().encode().toUri(), List.class);

    Iterator<Map<String, Object>> it = geoResponse.iterator();
    List<Future<ResponseEntity<Map>>> jobs = new ArrayList<>();

    // to be able to merge answers from rating to geoitems there is a need 
    // to map the article to its articleID
    // (articleID) => (articleItem)
    Map<String, Map<String, Object>> mappedResponseObjects = new HashMap<>();
    while (it.hasNext()) {
        Map<String, Object> item = it.next();

        AsyncRestTemplate async = new AsyncRestTemplate();
        Future<ResponseEntity<Map>> futureResult = async.getForEntity((String) item.get("rating"), Map.class);
        jobs.add(futureResult);/*from  www. j  a  v  a  2  s.c o m*/
        mappedResponseObjects.put((String) item.get("articleID"), item);
    }

    for (Future<ResponseEntity<Map>> job : jobs) {
        Map<String, Object> ratingMap = job.get().getBody();
        String articleID = (String) ratingMap.get("articleID");

        mappedResponseObjects.get(articleID).putAll(ratingMap);
    }

    WeightingPolicy policy = new WeightingPolicyImpl();
    List<Map<String, Object>> orderedResponse = policy.sortExcludingRating(mappedResponseObjects.values());
    List<Map<String, Object>> result = new ResponseMapFilterImpl().filter(orderedResponse);

    return new ResponseEntity<>(objectMapper.writeValueAsString(result), HttpStatus.OK);
}

From source file:com.nestedbird.modules.facebookreader.FacebookReader.java

/**
 * This is the method that actually makes the http request
 *
 * @param url              request url//from  w w w .  j a v  a 2s. c  o m
 * @param deconstructClass class of request object
 * @param <T>              type of request object this is
 * @return request object
 */
private <T> T request(final String url, final Class<T> deconstructClass) {
    final RestTemplate restTemplate = new RestTemplate();
    T deconstructedResponse = null;

    try {
        deconstructedResponse = restTemplate.getForObject(url, deconstructClass);
    } catch (HttpClientErrorException err) {
        logger.info("[FacebookReader] [request] Failure To Retrieve Facebook Resource (" + url + ")", err);
    }

    return deconstructedResponse;
}