Я использую конфигурацию на основе xml - исходящий шлюз http для trii = gger a rest service, ответ - ResponseEntity, и я не знаю подробностей этой службы. Полученный мной вывод должен быть помещен в очередь JMS.
Как я могу обновить приведенное ниже, чтобы извлечь только тело объекта ответа и перейти на выходной канал? Если есть трансформатор, приведите пример. Возможно ли использование конфига?
<int:chain input-channel = "gsInChannel" output-channel = "dest-channel">
<int-http:outbound-gateway
url = "https://ia-zatie.str13.tst.belst.nu/ia-zaatie/rest/signal/v2"
http-method = "POST"
header-mapper = "headerMapper"
request-factory = "sslFactory"
>
</int-http:outbound-gateway>
</int:chain>
целевой канал - это jms: адаптер исходящего канала
версия загрузки 1.4.3 и версия интеграции 4.3.6
Error: org.springframework.messaging.MessageHandlingException: error occurred in message handler [org.springframework.integration.jms.JmsSendingMessageHandler#0]; nested exception is org.springframework.jms.support.converter.MessageConversionException: Cannot convert object of type [org.springframework.http.ResponseEntity] to JMS message. Supported message payloads are: String, byte array, Map, Serializable object.
Похоже, вы нашли решение своей проблемы. Вы можете ответить таким образом и принять свой ответ или вообще закрыть вопрос.





Я использовал метод HTTP POST и поэтому не ожидал ответа. SoO не включил ожидаемый-ответ-тип, который возвращает тело
<int-http:outbound-gateway
url = "https://ia-zatie.str13.tst.belst.nu/ia-zaatie/rest/signal/v2"
http-method = "POST"
header-mapper = "headerMapper"
request-factory = "sslFactory"
expected-response-type = "java.lang.String">
Добавлен ожидаемый-ответ-тип = "java.lang.String".