senden Sie json-Daten über einen post Aufruf durch die Verwendung von rest-Vorlage vom Frühjahr

Ich bekomme immer eine Fehlermeldung, dass dies kein gültiges json-Daten und bekomme immer den Fehler 400. Ich glaube nicht, dass die Implementierung, die ich habe, ist die Formatierung richtig.
Ziel: versucht zu machen, einen post Aufruf über eine rest-Vorlage durch übergabe im JSON-Daten als der Körper. Es scheint, dass bei der Umwandlung von Karte, um json-Daten, es ist nicht richtig konvertiert json.

public void GetJsonData(String name, String city) {
        Map<String, String> map = new HashMap<String, String>();
        map.put("api_key", apikey);



map.put("venue_queries", "[{'name':'"+name+"', 'location': {'locality': '"+city+"'}}]");

        try {
            String resp = GlobalHelper.calltestService(RestServicesUrl, map);
            System.out.println(resp);
        } catch (Exception e) {
            //TODO Auto-generated catch block
            e.printStackTrace();
        }
    }


public String calltestService(String url, Map<String, String> data) throws Exception {
        RestTemplate rest = new RestTemplate();
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_JSON);
        headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
        ResponseEntity<String> response = new ResponseEntity<String>(headers, HttpStatus.OK);
        rest.getMessageConverters().add(new MappingJackson2HttpMessageConverter());
            Gson gson = new Gson();
            System.out.println(gson.toJson(data));
        try {
            response = rest.postForEntity(url, gson.toJson(data), String.class);
            System.out.println(response.getBody()); 
            System.out.println(response.getHeaders());
            return response.getBody();
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("error in post entity");
            return "error";
        }
    }
InformationsquelleAutor | 2014-04-04
Schreibe einen Kommentar