我有消息生产者,它使用RabbitTemplate在Rabbit上发送消息。它具有消息转换器:Jackson2JsonMessageConverter。
我正试图像这样从侦听器接收消息:
@RabbitListener(queues = "kolejka")
public void listen(String message) {
try {
log.info("Received ---------------------------------------------------");
log.info(message);
} catch (Exception e) {
log.debug("Error thrown while listening + " + e.getMessage());
}
}
不幸的是,消息是从45到130的数字数组,就像Ascii,所以我的听众的编码错误。 我尝试将侦听器方法更改为listen(Message message),然后 将消息转换为对象,例如:
public void listen(Message messsage) {
Transfer transfer = (Transfer) jackson2JsonMessageConverter.fromMessage(messsage);
但是它向我发出警告,消息未正确编码,并被丢入死信队列。