我们从SIv3.x迁移到SIv4.0.4,发现现在http-outbound-gateway错误地设置了内容类型标头。它不像将此类型设置为内容类型,而是将其设置为contentType。搜索我发现这可能是因为现在SI使用Spring Messaging clases,其中此属性名为contentType。
public static final String CONTENT_TYPE =“contentType”;
有没有办法在http-outbound中正确设置此内容类型,或者在使用object-to-json-transformer之前?
提前谢谢 问候 古兹曼答案 0 :(得分:2)
嗯,我理解你的观点,这真的是一个错误,我们在迁移到Spring Messaging时错过了。
请在此问题上提出JIRA票证 - 我们必须将contentType
邮件标头映射到Content-Type
HTTP标头。
现在作为一种解决方法,您可以手动re-map
:
<header-enricher>
<header name="#{T(org.springframework.http.HttpHeaders).CONTENT_TYPE}" expression="headers[#{T(org.springframework.messaging.MessageHeaders).CONTENT_TYPE}]"/>
</header-enricher>
而不是<obeject-to-json-transformer>
之前,而是<int-http:outbound-gateway>
之前和之后