我正在使用基于xml的配置 - http出站网关到trii = gger一个休息服务,响应是ResponseEntity,我不知道该服务的详细信息。我收到的输出应放在JMS队列中。
如何更新以下内容以仅提取响应实体的主体并传递给输出通道?如果有变压器,请举例。是否可以使用config?
<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>
dest-channel是jms:outbound-channel-adapter
启动版本1.4.3和集成版本4.3.6
错误:org.springframework.messaging.MessageHandlingException:错误 发生在消息处理程序中 [org.springframework.integration.jms.JmsSendingMessageHandler#0]; 嵌套异常是 org.springframework.jms.support.converter.MessageConversionException: 无法转换类型的对象 [org.springframework.http.ResponseEntity]到JMS消息。支持的 消息有效负载是:字符串,字节数组,映射,可序列化 对象
答案 0 :(得分:1)
我正在使用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">