I am a newcomer to spring/Integration and AMQP.
I have a problem with my application which i am hoping someone can help with.
Within my application, I am passing an XML message (using curl/soapUI) to an MVC / REST controller, which builds a spring integration message (using messagebuilder). I then pass this message to an AQMP fan-out exchange. this all works as planned.
I am then trying to pass this message to an SI outbound WS adapter which will call an external web service. I am actually trying to pass the message to multiple outbound WS adapters and then use an aggregator pattern to indicate to the MVC controller when all connected outbound WS adapters have returned/received a response. I am trying build a sample app that show that by processing a single message in parallel, will lead to a scalable and more efficient way of calling multiple external web services.
When I connect directly to the outbound WS, my code works correctly and XML messages are passed correctly. My challenge is that when I attempt to connect an AQMP inbound adapter back to this outbound WS and use AMQP as the transport for , I am getting an 'octet/stream' as the content type in the message when it hits the outbound web service adapter. The other error I was seeing was that a root element was not present in my JAXB classes.
It as if I have not converted the message correctly when my SI message is coming back through the inbound amqp adapter
I have tried converting using http converters in my web.xml file and also using a marshaller service within my spring integration context but to no avail.
Can anyone offer any advice on this as I am looking at this for a number of days and can't get to the bottom of it.