In the most recent snapshots, the nullability constraints for RabbitMessageOperations.convertAndSend(…) have defined non-nullability for the parameters. However, the implementation code delegated to (RabbitTemplate) ultimately allows for null parameters (in Rabbittemplate.send(String, String, Message, CorrelationData)) to default the null values based on values configured on the template. It would be nice if the higher-level operations would allow passing in null as well, so that their clients can make use of that defaulting.

Comment From: odrotbohm

It looks like you forgot to propagate the nullability declarations to RabbitMessageOperations?

Comment From: artembilan

Yeah... OK. I thought originally that it is not a RabbitMessageOperations responsibility to dictate us that those params could be null. But apparently that has to be opposite: the RabbitMessageOperations comes with nullable to support everything what is possible, and its implementations may decide to have those args as not-null. On it...

Comment From: artembilan

Just pushed. Give it 10-15 mins until SNAPSHOT appears. Thank you for your feedback!