клиентский запрос на синтаксически неверный запрос - PullRequest
0 голосов
/ 03 декабря 2018

Я пытался использовать клиент jersey, чтобы использовать мой веб-сервис jax-rs из другого веб-сервиса, и каждый раз при отправке почтового запроса от почтальона я получал эту ошибку 400 неверных запросов.Я настроил клиент-джерси для использования модуля чтения и записи сообщений, который я реализовал самостоятельно с помощью Gson.вот код, который вызывает другой веб-сервис

 ClientConfig config = new ClientConfig();
         config.register(GsonWriter.class);
            config.register(GsonReader.class);

        Client client = ClientBuilder.newClient(config);
        WebTarget webTarget = client.target("http://localhost:8080/MessageBucket/MsgBucket/Api/bucket/msg");
        //WebTarget msgserviceWebTarget = webTarget.path("bucket/msg");
        System.out.println(webTarget.getUri());
        Invocation.Builder invocationBuilder = webTarget.request(MediaType.APPLICATION_JSON);
        Response response = invocationBuilder.post(Entity.entity(msg, MediaType.APPLICATION_JSON));
        String bresponse = response.readEntity(String.class);
        System.out.println("after request");

        return bresponse;

объект msg, который я передаю в качестве параметра методу ресурса моего другого веб-сервиса.

ошибка, которую я получаю,: Запрос, отправленный клиентом, был синтаксически неверным.

1 Ответ

0 голосов
/ 13 декабря 2018

оказывается, у меня был httpHeaders.get ("Content-Type"). Add ("charset = UTF-8");в моем поставщике gson метод writeTo. Как только я это закомментировал, код работает как шарм.

...