I have a spring boot application. trying to send xml payload through postman to a Post request. I get the following exception
java.lang.IllegalS
As pointed out by KOrest, Jaxb2XmlDecoder
did not implement decodeToMono
, but it is now fixed via SPR-16759. So just upgrading to Spring Framework 5.0.6+ / Spring Boot 2.0.2+ should avoid the reported exception.
Side note: like by Brian Clozel, I am not sure of what you try to achieve and you probably should not call subscribe
manually but instead return a transformation of the input. doOnNext
can be used if you want to print the output without triggering the demand artificially.
Not sure why but as I can see it uses Jaxb2XmlDecoder
for decoding XML payload and decodeToMono
method is not implemented there.
To fix this you can use Flux<Sir>
type as a requestBody
Could you explain what are you trying to achieve in your Controller?
This error probably comes from the fact that you're calling subscribe
in your controller method, effectively consuming the incoming Flux
and returning at the same time.
As a general rule, you shouldn't subscribe to Publisher
s within your Controllers.