Недопустимый символ в имени схемы в индексе 4 при попытке создать httpPost, в каком формате? - PullRequest
0 голосов
/ 17 октября 2019

Я пытаюсь создать http-пост с добавленным свойством json,

мой код выглядит так:

    public void abandonOrder(Integer orderid) throws IntegrationFeedbackException {

        URI uri;
        HttpUriRequest request;
        try {
            URIBuilder uriBuilder = new URIBuilder(ApplicationEnvironment.getInstance().getStateEngineAbandonOrderUrl());
            JsonObject abandonJson = new JsonObject();
            abandonJson.addProperty("orderIds", orderid);
            abandonJson.addProperty("state", "ABANDON_STARTED");

            String jsonString = abandonJson.toString();

            uri = uriBuilder.build();

            request = RequestBuilder.create("POST")
                    .setUri(uri)
                    .setEntity(new StringEntity(jsonString, ContentType.APPLICATION_JSON))
                    .build();
        } catch (URISyntaxException e) {
            throw new IntegrationFeedbackException("Integration feedback: Could not build URI.");

        }

        HttpClient client = HttpClientBuilder.create().build();
        HttpPost HttpPost;
        HttpPost = new HttpPost(String.valueOf(request));
}

Но я получаю сообщение об ошибке при запуске последней строки,ошибка:

Illegal character in scheme name at index 4: POST http://127.0.0.1:7500/api/set-state HTTP/1.1.

Теперь я не уверен, к чему относится индекс 4, это пробел после POST? почему это пространство добавлено? Я также не уверен, какой должен быть правильный формат сообщения, я не совсем уверен, почему HTTP / 1.1. добавляется в конце, и если это не так.

Я добавляю скриншот того, как выглядит запрос в отладчике: enter image description here

любые идеив чем проблема?

...