I have an issue similar to yours but it has nothing to do with content type.
Can you tell me what converters did you declare for:
Code:
message-converters="messageConverterList
For your service activator, what is the type of the payload released to the headerFilterChannel?
Code:
<service-activator ref="serviceDelegate"
input-channel="requestChannel"
output-channel="headerFilterChannel"/>
For the inbound-gateway to send a JSON reply, I expect you have Jackson in your classpath? In the docs, it's mentioned you have to declare a ViewResolver. What ViewResolver did you declare if any?
Thanks