public <T> void putJson(String url, Header header, Query query, String body, Type responseType,
            Callback<T> callback) {
        execute(url, HttpMethod.PUT,
                new RequestHttpEntity(header.setContentType(MediaType.APPLICATION_JSON), query, body), responseType,
                callback);
    }
@Test
    void testPutJson() throws Exception {
        Header header = Header.newInstance().setContentType(MediaType.APPLICATION_XML);
        restTemplate.putJson(TEST_URL, header, "body", String.class, mockCallback);
        verify(requestClient).execute(any(), eq("PUT"), any(), any(), eq(mockCallback));
        assertEquals(MediaType.APPLICATION_JSON, header.getValue(HttpHeaderConsts.CONTENT_TYPE));
    }