spring-amqp - Spring AMQP XML 消息转换器
问题描述
我正在尝试使用 spring-amqp 从 RabbitMQ 读取消息并将其转换为我的域对象。
Jackson2JsonMessageConverter
我已成功将其配置为接收 json 消息并使用该类将其映射到我的域对象。
现在,我正在尝试使用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;
}
谢谢!!
解决方案
使用配置了 Spring OXM 编组器/解组器的MarshallingMessageConverter -有关使用多种不同技术的各种编组器/解组器的信息,请参阅Spring Framework OXM 文档。
推荐阅读
- javascript - Jquery Waypoints - 一个动画到多个 div
- css - Vaadin Flow 中的 Shadow Dom 风格
- php - 在 Woocommerce Bookings 中以编程方式设置可预订的产品基础成本
- chromium - 升级 Puppeteer 后 Puppeteer 脚本突然停止工作
- javascript - 如何在 CDATA 中读取 JavaScript 对象
- c# - 从共享项目中获取嵌入式资源
- android - 是否可以在不关闭应用程序树的情况下将项目与成绩文件同步?
- regex - 正则表达式需要替换标记并转换为 FontAwesome标记
- c# - UpdatePanel 中的 Gridview 删除记录,更新错误的行
- python - 在python上反转3D网格