1

我们正在使用 Spring Boot 2.1.3.RELEASE 和 RabbitMQ。MessagePack 用于序列化。

我们正在使用 convertAndSend:

rabbitTemplate.convertAndSend("exchange", "routingKey", object);

并得到以下异常:

java.lang.UnsupportedOperationException: null
    at org.msgpack.jackson.dataformat.MessagePackFactory.createGenerator(MessagePackFactory.java:102)
    at com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:3219)
    at org.springframework.amqp.support.converter.AbstractJackson2MessageConverter.createMessage(AbstractJackson2MessageConverter.java:259)
    at org.springframework.amqp.support.converter.AbstractMessageConverter.toMessage(AbstractMessageConverter.java:70)
    at org.springframework.amqp.support.converter.AbstractMessageConverter.toMessage(AbstractMessageConverter.java:58)
    at org.springframework.amqp.rabbit.core.RabbitTemplate.convertMessageIfNecessary(RabbitTemplate.java:1726)
    at org.springframework.amqp.rabbit.core.RabbitTemplate.convertAndSend(RabbitTemplate.java:1048)
    at org.springframework.amqp.rabbit.core.RabbitTemplate.convertAndSend(RabbitTemplate.java:1041)

这是引发异常的行:

return getRequiredMessageConverter().toMessage(object, new MessageProperties());

有没有办法将内容类型设置MessagePropertiesapplication/json?默认值为application/octet-stream.

4

0 回答 0