Проблема декодирования контента при подключении REST с http - PullRequest
0 голосов
/ 03 мая 2019

Я пытаюсь соединить маршрут REST с вышестоящей службой http.Существует проблема с содержимым декодирования - ERR_CONTENT_DECODING_FAILED при просмотре из Chrome.Я предполагаю, что это связано с gzip.Я новичок в Apache Camel, поэтому я не уверен, где я ошибся.

Вот маршрут:

class RestRouteBuilder : RouteBuilder() {

    override fun configure() {
        restConfiguration().apply {
            component = "undertow"
            bindingMode = RestBindingMode.json
            port = "8082"
            scheme = "http"
        }

        rest("/airlines")
            .get("/").produces("application/json").to("undertow:http://localhost:8080/airlines?bridgeEndpoint=true")
    }
}

Как бы я успешно вернул контент из сервиса на 8080?

1 Ответ

0 голосов
/ 06 мая 2019

Я еще немного прочитал и обнаружил, что неправильно использую bindingMode . Раздел «Привязка к POJO» в https://camel.apache.org/rest-dsl.html должен объяснить все для новичков с такой же проблемой. В моем конкретном случае исправление было просто удалить bindingMode из остальной конфигурации. Это безопасно в моем примере, потому что у меня нет входящего сообщения, которое требуется для демаршаллинга - все GET.

Рабочий код:

class RestRouteBuilder : RouteBuilder() {

    override fun configure() {
        restConfiguration().apply {
            component = "undertow"
            port = "8082"
            scheme = "http"
        }

        rest("/airlines")
            .get("/").produces("application/json").to("undertow:http://localhost:8080/airlines?bridgeEndpoint=true")
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...