我正在尝试使用spring-amqp从RabbitMQ中读取一条消息,并将其转换为我的域对象。
我已经成功配置它以接收json消息,并使用Jackson2JsonMessageConverter
类将其映射到我的域对象。
现在,我正在尝试使用ContentTypeDelegatingMessageConverter
并添加接收XML(除JSON之外)的功能。
但是,不幸的是,我很难找到一个处理XML的内置消息转换器或有关如何配置一个内置转换器来处理XML的文档。
有关如何使用spring-amqp处理XML的文档似乎很少。因此,我希望在下面添加到我的代码示例中(请参阅 TODO ):
@Bean
MessageConverter messageConverter() {
ContentTypeDelegatingMessageConverter messageConverter = new ContentTypeDelegatingMessageConverter();
Jackson2JsonMessageConverter jsonMessageConverter = new Jackson2JsonMessageConverter();
messageConverter.addDelegate("application/json", jsonMessageConverter);
// TODO: messageConverter.addDelegate("application/xml", xxx);
return messageConverter;
}
谢谢!
答案 0 :(得分:1)
使用配置有Spring OXM编组器/解组器的MarshallingMessageConverter-有关使用多种不同技术的各种编组器/解组器的信息,请参见Spring Framework OXM documentation。